【问题标题】:Similar components with multiple data in one vue instance在一个 vue 实例中具有多个数据的类似组件
【发布时间】:2020-01-02 14:24:15
【问题描述】:

一个页面的组件基本相似,但单独的数据填充和组件来自Element-UI

var Main = {
  data() {
    return {
      options: [{
          value: 'Option1',
          label: 'Option1',
        },

        {
          value: 'Option2',
          label: 'Option2',
        },
        {
          value: 'Option3',
          label: 'Option3',
        },
      ],
      value: '',
      optionss: [{
          values: 'bKash',
          label: 'bKash',
        },

        {
          values: 'Rocket',
          label: 'Rocket',
        },
        {
          values: 'Bank A/C',
          label: 'Bank A/C',
        },
      ],
      values: '',
    }
  }
}
var Ctor = Vue.extend(Main)
new Ctor().$mount('#app')
@import url("//unpkg.com/element-ui@2.11.1/lib/theme-chalk/index.css");
<script src="//unpkg.com/vue/dist/vue.js"></script>
<script src="//unpkg.com/element-ui@2.11.1/lib/index.js"></script>
<div id="app">
  <template>
    
    <div>
       <el-select v-model="value" placeholder="Select Account">
              <el-option
                      v-for="item in options"
                      :key="item.value"
                      :label="item.label"
                      :value="item.value">
              </el-option>
</el-select>
    </div>
    <br/><br/>
    
  <div>
    <el-select v-model="values" placeholder="Select Account">
              <el-option
                      v-for="item in optionss"
                      :key="item.values"
                      :label="item.label"
                      :values="item.values">
              </el-option>
 </el-select>
    
    
    
    
    
  </div>
 
</template>
</div>

一个组件工作正常,但 select 上的其他组件不工作,但数据正确填充,为什么?

【问题讨论】:

    标签: javascript vue.js vue-component element-ui


    【解决方案1】:

    msg 错误很明显,您错过了第二个组件中的值,您在 el-option 中写入 :values 而不是 :value,但标签很好,因此组件可以填充标签而不是值。

    var Main = {
      data() {
        return {
          options: [{
              value: 'Option1',
              label: 'Option1',
            },
    
            {
              value: 'Option2',
              label: 'Option2',
            },
            {
              value: 'Option3',
              label: 'Option3',
            },
          ],
          value: '',
          optionss: [{
              value: 'bKash',
              label: 'bKash',
            },
    
            {
              value: 'Rocket',
              label: 'Rocket',
            },
            {
              value: 'Bank A/C',
              label: 'Bank A/C',
            },
          ],
          values: '',
        }
      }
    }
    var Ctor = Vue.extend(Main)
    new Ctor().$mount('#app')
    @import url("//unpkg.com/element-ui@2.11.1/lib/theme-chalk/index.css");
    <script src="//unpkg.com/vue/dist/vue.js"></script>
    <script src="//unpkg.com/element-ui@2.11.1/lib/index.js"></script>
    <div id="app">
      <template>
        
        <div>
           <el-select v-model="value" placeholder="Select Account">
                  <el-option
                          v-for="item in options"
                          :key="item.value"
                          :label="item.label"
                          :value="item.value">
                  </el-option>
    </el-select>
    value= {{value}}
        </div>
        <br/><br/>
        
      <div>
        <el-select v-model="values" placeholder="Select Account">
                  <el-option
                          v-for="item in optionss"
                          :key="item.values"
                          :label="item.label"
                          :value="item.value"> <!-- here was the error -->
                  </el-option>
     </el-select>
    
    values = {{values}}
        
        
        
        
        
      </div>
     
    </template>
    </div>

    【讨论】:

    • 如果您看到我的数据正确填充但在选择时,第二个将不会选择并且不会显示
    猜你喜欢
    • 1970-01-01
    • 2019-07-06
    • 1970-01-01
    • 2017-11-13
    • 1970-01-01
    • 2018-02-15
    • 2016-04-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多