【发布时间】:2017-06-12 00:13:17
【问题描述】:
Redux-form 不允许我将字段名称设置为整数,因为它需要一个字符串...如何将 redux-form 字段名称设置为 API 可以用来记录用户选择的选项人才。
<Field
name='talent_id[' + {field.talent_id} + ']'
component={renderField}
field={field}
/>
这不工作,我得到Syntax error: Unexpected token 和+
Talents.rb
id | Title
1 | Jumping
2 | Skipping
3 | Running
我的 API,像这样返回 Talents#Index:
[
{"id":1,"title":"Jumping"},
{"id":2,"title":"Skipping Rope"},
{"id":3,"title":"Running"},
{"id":4,"title":"Something Else"}
]
然后我用上面的方法构建了一个以后可以提交到服务器的表单。
<div>
<label>Jumping</label>
<select name="1">
<option></option>
<option value="1">XXX</option>
<option value="2">YYY</option>
<option value="3">ZZZ</option>
</select>
</div>
<div>
<label>Skipping Rope</label>
<select name="2">
<option></option>
<option value="1">XXX</option>
<option value="2">YYY</option>
<option value="3">ZZZ</option>
</select>
</div>
....
【问题讨论】:
-
与 redux-form 无关。你的语法是无效的 JSX。试试
name={ 'talent_id[' + field.talent_id + ']' }。见facebook.github.io/react/docs/…。
标签: javascript reactjs redux redux-form