javascript - 如何让 React preventDefault 工作 'e.preventDefault();' 不工作
问题描述
所以我的反应应用程序有一个问题,我想在提交表单时防止默认行为。但是,当我提交表单时, preventDefault() 似乎没有做任何事情。此外,当我将鼠标悬停在我的函数中的 e 周界和 preventDefault 方法时,vscode 没有提供任何信息,表明它似乎没有识别它?
import React, { useState } from 'react';
import './Feed.css';
import CreateIcon from '@material-ui/icons/Create';
import ImageIcon from '@material-ui/icons/Image';
import SubscriptionsIcon from '@material-ui/icons/Subscriptions';
import EventNoteIcon from '@material-ui/icons/EventNote';
import CalendarViewDayIcon from '@material-ui/icons/CalendarViewDay';
import InputOption from './InputOption';
import Post from './Post';
function Feed() {
const [posts, setPosts] = useState([]);
const sendPost = (e) => {
e.preventDefault();
};
return (
<div className="feed">
<div className="feed__inputContainer">
<div className="feed__input">
<CreateIcon />
<form>
<input type="text"></input>
<button onClick={sendPost} type="submit">Send</button>
</form>
</div>
<div className="feed__inputOptions">
<InputOption Icon={ImageIcon} title="Photo" color="#70B5F9" />
<InputOption Icon={SubscriptionsIcon} title="Video" color="#E7A33E" />
<InputOption Icon={EventNoteIcon} title="Event" color="#C0CBCD" />
<InputOption Icon={CalendarViewDayIcon} title="Write Article" color="#7FC15E" />
</div>
</div>
{posts.map((post) => (
<Post />
))}
<Post name="James Osborne" description="This is a test" message="This is a message" />
</div>
);
}
export default Feed
解决方案
您需要在表单标签中申请提交,而不是像那样单击按钮
<form onSubmit={sendPost} >
<input type="text"></input>
<button type="submit">Send</button>
</form>
推荐阅读
- php - 在 WooCommerce 中使用 AND 关系对 2 个类别术语进行税务查询
- amazon-web-services - 为什么使用 AWS4 签名时默认区域的 s3 请求会失败
- javascript - 2个相同的javascript,一个工作一个不
- flutter - 颤振颤振-web-sdk-windows-x64 下载失败
- python - Python:删除数据框的行并保留特定组
- python - 如何从 csv 文件创建字典列表?
- python - 无法安装 Python 模块 sib_api_v3_sdk
- r - 使用带有多个参数的 lapply() 生成 html 代码
- html - 有没有办法在没有 Javascript 的情况下显示表单提交的反馈?
- r - 来自 tidyverse 的 group_by 示例无法正常工作