reactjs - 基本形式反应
问题描述
您好,我只想制作一个表格,我的文本框不接受我的输入,我的提交工作但不发送任何值。我究竟做错了什么?我知道这是一个基本问题,但我不知道我的代码中有什么问题。
关键问题:
- 它不会更新状态,也不会接受我的输入。
- 可编辑但无法写入的字段
代码
import React, { Component } from "react";
class Postform extends Component {
constructor(props) {
super(props);
this.state = {
name: "",
category: "",
price: "",
};
}
changeHandler = (e) => {
this.setState = { [e.target.name]: e.target.value };
};
submitHandler = (e) => {
e.preventDefault();
console.log(this.state);
};
render() {
const { name, category, price } = this.state;
return (
<div>
<form onSubmit={this.submitHandler}>
<div>
<input
type="text"
name="name"
placeholder="Name"
value={name}
onChange={this.changeHandler}
/>
<input
type="text"
name="category"
placeholder="Category"
value={category}
onChange={this.changeHandler}
/>
<input
type="text"
name="price"
placeholder="Price"
value={price}
onChange={this.changeHandler}
/>
</div>
<button type="submit">Add product</button>
</form>
</div>
);
}
}
export default Postform;
解决方案
将此行更改为
changeHandler = e => {
this.setState({[e.target.name]: e.target.value });
};
由于 setState 是一个函数,它不是一个属性!
推荐阅读
- python - 需要在调试 == false 时在模板中显示媒体文件的解决方案
- c++ - c++读取函数得到额外的字母
- centos - 带有 Centos7/8 的 Google Compute Engine (GCE) 上的 Cloud Init 在首次启动时无法正常运行,但在任何其他重启后都正常
- python - Python中这些符号的用途是什么?♀ ♂
- pandas - 如何找到一部电影的平均评分
- c# - 实时同步定时器
- drupal-8 - DRUPAL 8.7 错误 taxonomy_term.XXXX 字段必须更新
- python - 防止用户在 Python 3 中输入字符串
- c++ - 为什么 output_iterator 概念不需要 output_iterator_tag?
- javascript - 在文件夹上使用 gunzip