bug:dom绑定文字,详情显示文字,点击编辑,不修改任何,点击保存,无法传递给后台id,antd下拉框的问题
解决方案:dom绑定id(要转化为string才行),界面会根据id在下拉选项中找到相应的文字显示在详情页面中。如果显示的是id数字,请注意讲dom中的id转化为string类型,由于antd-select>option的key是string类型,将id强制转化成了string
roleShow = {
id: '1',
name: '胡彦祖',
desc: 42,
resources: [
{
resourceId: 0,
resourceName: '数据源管理'
},
{
resourceId: 1,
resourceName: '自定义算法管理'
}
]}
resourceOption = [
{
resourceId: 0,
resourceName: '数据源管理'
},
{
resourceId: 1,
resourceName: '自定义算法管理'
}
]
// initialValue配置错误
type !== 'detail' ?
getFieldDecorator('resourceIds', {
rules: [{required: true, message: '请选择权限!'}],
initialValue: roleShow.resources.map(data=>data.resourceName)
})(
<Select placeholder='请选择权限!' mode='multiple'\>
{resourceOption.map(data =><Select.Option key={data.resourceId})>{data.resourceName}</Select.Option>}
</Select\>
) : roleShow.resources.map(data => data.resourceName)
效果图:
// initialValue配置正确
type !== 'detail' ?
getFieldDecorator('resourceIds', {
rules: [{required: true, message: '请选择权限!'}],
initialValue: roleShow.resources.map(data=>data.resourceId).map(item=>item.toString())
})(
<Select placeholder='请选择权限!' mode='multiple'\>
{resourceOption.map(data =><Select.Option key={data.resourceId})>{data.resourceName}</Select.Option>}
</Select\>
) : roleShow.resources.map(data => data.resourceName)
效果图
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。