我有一个表单,我想要使用Relic.js呈现,并且还允许用户编辑输入并将其提交给服务器。这是一个产品清单。每个tr代表一个产品id,其数量,名称,价格,类别可以由用户更改。它有下拉框和文本输入。React.js - 将更改处理函数传递给深度嵌套窗体组件
我想打破它在以下组件:
- 产品列表
- 产品
- CategoryDropdown
产品列表包含产品包含CategoryDropdown。现在我必须通过handleCategoryChange函数到CategoryDropDown组件。所以产品列表将通过这个作为一个道具产品它将通过它作为支柱类别下降。
这是正确的方法吗?如果我的表单变得更复杂,甚至更深的嵌套组件?我是否应该不断地将处理函数作为一个属性从一直到最终传递?或者我应该考虑使用还原?
<form>
<table>
<tr>
<td><input type="hidden" name="productId" value="101"/></td>
<td><input type="text" name="quantity"/></td>
<td><input type="text" name="productName"/></td>
<td><input type="text" name="productPrice"/></td>
<td>
<select name="productCategory">
<option value="1"> Soap </option>
<option value="2"> Shampoo </option>
</select>
</td>
</tr>
<tr>
<td><input type="hidden" name="productId" value="102"/></td>
<td><input type="text" name="quantity"/></td>
<td><input type="text" name="productName"/></td>
<td><input type="text" name="productPrice"/></td>
<td>
<select name="productCategory">
<option value="1"> Soap </option>
<option value="2"> Shampoo </option>
</select>
</td>
</tr>
</table>
</form>
感谢您的努力,几乎可以编码......好的方法也是如此 – dharm0us