gpt4 book ai didi

javascript - 在 React 中将项目添加到列表

转载 作者:行者123 更新时间:2023-11-30 19:11:53 25 4
gpt4 key购买 nike

我想在当前水果列表中添加一个新水果,但我不确定该怎么做,我目前在提交时发布了一个空字符串,它只是添加了一个空字符串 li 到列表

我的水果列表组件如下;

import AddFruit from './AddFruit';

class Fruits extends Component {
state = {
fruits: ['apple', 'banana']
};

render() {
const { fruits } = this.state;
return (
<div style={{ paddingTop: 30 }}>
<AddFruit handleSubmit={this.handleSubmit} />
{fruits.map(fruit => {
return (
<ul key={fruit}>
<li>{fruit}</li>
</ul>
);
})}
</div>
);
}

handleSubmit = e => {
const { fruits } = this.state;
e.preventDefault();
this.setState({ fruits });
};
}

export default Fruits;

我的水果加法器如下...我知道他们完全错了,但我很难弄清楚这一点,而且已经很晚了:(


class AddFruit extends Component {
state = {
addItem: ''
};
render() {
const { addItem } = this.state;
return (
<div>
<form onSubmit={this.handleSubmit} style={{ paddingTop: 35 }}>
<input
type="text"
value={addItem}
placeholder="Add Item"
onChange={this.handleChange}
/>
<button
onClick={this.props.handleSubmit}
className="btn btn-primary btn-sm"
>
Add Fruit
</button>
</form>
</div>
);
}

handleChange = event => {
console.log(event.target.value);
const { value } = event.target;
this.setState({ addItem: value });
};
}

export default AddFruit;

最佳答案

不清楚是什么类型的元素调用了 HandleSubmit,但可以说它是输入的,所以代码是

handleSubmit = e => {
e.preventDefault();
const fruitName = e.target.value;
const fruits = [...this.state.fruits, fruitName];
this.setState({ fruits });
};

关于javascript - 在 React 中将项目添加到列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58382897/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com