【发布时间】:2020-10-03 12:09:44
【问题描述】:
我是开发新手,欢迎任何帮助:)
这是我的问题:
我正在使用 next.js - 这可能很重要,因为 f.ex。 document.createElement 似乎只适用于 useEffect。
我创建了一个文本区域,用户可以在其中添加用逗号分隔的单词(例如“Nike、Adidas、New Balance”)。我想重写下面的现有代码,以便:
- 表格仅在用户在输入框中添加内容时可见/出现
- 输入框中的每个单词(例如 Nike、Adidas)都会在表中创建一个新行(在表头“品牌”中)。
到现在为止,我正在尝试使用 .split 和 .forEach 方法来创建一个新的元素(表)。但我就是无法让它发挥作用——也许这不是正确的解决方案。欢迎任何帮助!
function Analyzer() {
const [brand, setBrand] = React.useState('');
const handleChange = (event) => {
setBrand(event.target.value.split(','))};
return(
<div>
<textarea type="text"
placeholder="Example:
Nike, Adidas, New Balance ..."
onChange={handleChange}></textarea>
<table className={styles.table}>
<thead>
<tr>
<th>No.</th>
<th>Brand</th>
<th>Also known as</th>
<th>Avg. price</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>{brand}</td>
<td></td>
<td><input type= "number"></input>%</td>
</tr>
</tbody>
</table>
</div>);
}
【问题讨论】:
标签: javascript reactjs next.js user-input