鍍金池/ 問答/HTML/ antd Modal彈框中select選擇

antd Modal彈框中select選擇

clipboard.png
第一次彈框

clipboard.png
第二次彈框

如圖所示,我點(diǎn)開彈框之后選擇“所屬渠道”,對(duì)應(yīng)的“渠道編碼”填到后邊的框中

不知道為什么第二次第三次..第N次彈框我選擇“所屬渠道”,“渠道編碼”出來(lái)之后,select選中的值不展示,有時(shí)候渠道編碼的值也會(huì)沒有 只有第一次才是正常的

開始我想可能是彈出框臟數(shù)據(jù)的鍋 可是我加上彈出框的key值之后數(shù)據(jù)是顯示正常了 但是這個(gè)問題仍然存在

this.state = {
    visible: false,
    visibleKey:0,
    channelId:"",
};
showModal = () => {
    this.props.clearData();
    this.props.dataId(this.props.id);
    this.setState({
        visible: true,
        visibleKey: this.state.visibleKey+1,
    });
};
<Modal
    title="上架"
    width={1000}
    visible={this.state.visible}
    onOk={this.handleOk.bind(this)}
    onCancel={this.handleCancel}
    key={this.state.visibleKey}
>
...
</Modal>
<Col span="8">
    <FormItem {...formItemLayout}  label="所屬渠道" >
        {getFieldDecorator('channelId', {
            initialValue:goodsDataRow.channelId,
            //rules: [{ message: '請(qǐng)?zhí)顚懰鶎偾溃?}],
        })(
            <Select onSelect={this.handleSelect.bind(this)}>
                {this.props.channel.map((item,index)=>{
                    return(
                        <Option key={index} value={item.id}>{item.name}</Option>
                    )
                })}
            </Select>
        )}
    </FormItem>
</Col>
<Col span="8">
    <FormItem {...formItemLayout}  label="渠道編碼" >
        {getFieldDecorator('channelCode', {
            //initialValue:this.props.channelCode,
        })(<Input />)}
    </FormItem>
</Col>

handleSelect = (value, option) =>{
    this.setState({
        channelId:value,
    });
    this.props.validatePutaway(value,this.props.id);
    this.props.selectChannelByDetail({id:value},this.getChannelCode);
};
getChannelCode = (value) =>{
    this.props.form.setFieldsValue({"channelCode":value});
};

請(qǐng)問這個(gè)會(huì)是什么問題

回答
編輯回答
選擇

initialValue:goodsDataRow&&goodsDataRow.channelId&&goodsDataRow.channelId.toString()

謝邀。這樣試試?我也不知道。。瞎蒙的。。。

2017年10月2日 11:37
編輯回答
風(fēng)畔

打開initialValue:this.props.channelCode的注釋,保證每一個(gè)form表單都有initialValue.然后每次打開modal時(shí),resetFields應(yīng)該這個(gè)問題就解決了。

2017年7月28日 05:32
編輯回答
壞脾滊

樓主,select組件在modal組件里,鼠標(biāo)滾輪滑動(dòng),select下拉框會(huì)消失嗎,為什么我的會(huì)消失

2018年8月22日 01:27
編輯回答
笨尐豬

現(xiàn)在知道問題出在什么地方了
需求是讓我在選擇所屬渠道的時(shí)候調(diào)用接口判斷此商品是否上架
調(diào)用的判斷上架接口在select選擇的時(shí)候觸發(fā)有問題
但是解決方法還是沒有找到

2018年3月26日 02:50