vue iview 我现在做了一个公共组件,但是查询绑值的时候有问题

clipboard.png
图中标红的是公共组件,左边一个下拉框改变会出发一个事件,导致右边下拉框的数据源改变。
我保存好了之后,发现值传进去了,但是下拉框没有数据。
上代码
查询事件:

nodeIdChange () {
        if (this.nodeId) {
          TaskConfService.selectTaskConfig(this.nodeId).then(result => {
            if (result.success) {
              this.confData = result.content
            }
            // xx设置初始化
            this.$store.commit('initTipSetList', this.confData.tipSetList)
            this.copyConfData = this.__utils.cloneDeep(this.confData)
            // 勾选的角色显示
            result.content.relatedRoleList.forEach(item => {
              if (this.selectedRoleId.indexOf(item.companyRoleId) === -1) {
                this.selectedRoleId.push(item.companyRoleId)
              }
            })
            // 显示条件和完成条件的转换
            debugger
            let a = bConvertCondition.convertConditionArrayToObj(result.content.preCondition)
            console.log('a', a)
            this.preCondition = bConvertCondition.convertConditionArrayToObj(result.content.preCondition)
            this.finishCondition = bConvertCondition.convertConditionArrayToObj(result.content.finishCondition)
          })
        } else {
          this.confData = this.getDefault()
        }
      },
      
  

 

组件调用:

  <Form-item label="启动条件" size="small">
    <!--{{preCondition}}-->
    <condition-setting v-model="preCondition" :dataSources="preConditionDataSources" :type="preConditionType"
                       ref="startDataSources" :minLength="preConditionMinLength"/>
  </Form-item>
  <!--<form-style title="完成条件:">-->
  <Form-item label="完成条件" size="small">
    <!--{{finishCondition}}-->
    <condition-setting v-model="finishCondition" :dataSources="finishConditionDataSources"
                       :type="finishConditionType"
                       ref="finishDataSources" :minLength="finishConditionMinLength"/>
  </Form-item>
</Panel>


公共组件

<template>
  <Form inline compact v-else ref="conditionSettingForm">

    <div v-for="(item, index) in value">
      <template>
        <Row :gutter="24">
          <i-Col span="10">
            <Form-item size="small">
              <Select size="small" filterable @on-change="fieldEnChange(index)" clearable
                      v-model="value[index].fieldId" style="width:200px">
                <Option v-for="item in conditionData" :value="item.id" :key="item.id">
                  {{item.name}}
                </Option>
              </Select>
            </Form-item>
          </i-Col>
          <i-Col span="10">
            <Form-item>
              <Select size="small" filterable v-model="value[index].fieldValueId" style="width:200px"
                      @on-change="fieldValueHandler(index)">
                <Option v-for="item in fieldValues[index]" :value="item.id" :key="item.id">
                  {{item.name}}
                </Option>
              </Select>
            </Form-item>
          </i-Col>
          <i-Col span="2">
            <a v-if="showDelete" @click="deleteStartConditions(index)" class="dpib mt8">
              Delete
            </a>
          </i-Col>
        </Row>
      </template>
    </div>
    <div style="margin-top: 8px">
      <a @click="addStartConditions" v-if="value">
        <Icon type="md-add"></Icon>
        Add
      </a>
    </div>
  </Form>
</template>


问题:我查询的时候,为什么值传入了,但是数据没有,下拉框1联动下拉框2,我查询不会触发1的onChange事件,怎么改变2的数据源?
阅读 1.1k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题