React中没有键或值或标签错误

时间:2017-06-07 20:48:20

标签: reactjs antd

我使用的是antd版本2.10.4

我的代码是这样的(基本上是点击按钮打开模态窗口)

 <div className="storage-analysis clearfix">
          <span className="new-dash-btn">
            <Button   onClick ={this.NewAnalysisPopUp} style ={{"width":140,"height":40}}>New Analysis</Button>
          <Modal
            key="1"
            value="2"
            label="3"
            title="New Analysis" 
            visible={this.state.openModalDB}
            onOk={this.saveAndClose}
            onCancel={this.closeModal}
          >
            <div className="row to-margin-bottom">
              <div className="row modal-window-antd">
                <div className="col-md-4">
                      <label>Analysis Name
                      </label>
                </div>
                <div className="col-md-8">
                  <AutoComplete
                    style={{ "width":"100%" }}
                    dataSource={analysisList}
                    onSelect={this.onSelect}
                    onChange={this.handleChange}
                    placeholder="input here"
                  />
                </div>
              </div>
              <div className="row modal-window-antd">
                    <div className="col-md-4">
                      <label>Dashboard Name
                      </label>
                    </div>
                    <div className="col-md-8">
                      <Select
                        multi={true}
                        name="form-field-name"
                        value={this.state.dashboardSelected}
                        options={dashboardList}
                        onChange={this.handleChangeDashboard}
                      />
                    </div>
                    </div>
            </div>
          </Modal>
        </span>
                </div>

但点击按钮元素后,我收到以下错误: 未捕获错误:[object Object]

没有键或值或标签(仅适用于OptGroup)

1 个答案:

答案 0 :(得分:0)

我有同样的错误。我的情况是我需要链接两个调度,但是第一个必须在允许另一个调度之前更新应用程序的状态。我有一个模态,然后可以发出一个调用动作来打开另一个模态,然后派出一个动作来关闭自己

这导致上述错误

openOtherModal: () => {
    dispatch(actions.closeThisModal())
    dispatch(actions.openOtherModal())
  },
})

使用promise resolve ... then()。解决了错误

openOtherModal: () => {
      new Promise((resolve) => resolve(dispatch(actions.closeThisModal())))
        .then(() => {
            dispatch(actions.openOtherModal())
        });
  },
})