【问题标题】:How to display values from array vuejs如何显示数组vuejs中的值
【发布时间】:2018-08-02 00:24:03
【问题描述】:
<div id="app"> 
    <div v-for="(value, index) in additionalOptions">
        <input type="text" v-model="additionalOptions[0]" />
    </div>
</div>

var app = new Vue({
    el: '#app',
    data: {
        additionalOptions: [{
            "side_dish": ["Potato", "Apple"]
        }]
    },
});

响应是[object Object]

请帮忙,提前谢谢。

【问题讨论】:

  • 我也完全被这个卡住了

标签: arrays vue.js binding key array-key


【解决方案1】:

使用对象而不是数组。

const app = new Vue({
  el: "#app",
  data() {
    return {
      additionalOptions: [{
        side_dish: {
          0: "Potato",
          1: "Apple"
        }
      }]
    }
  },
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.0.3/vue.js"></script>
<div id="app">
    <div v-for="option in additionalOptions" :key="option">
        <div v-for="(side, side_index) in option.side_dish" :key="side_index">
          <input type="text" v-model="option.side_dish[side_index]" />
        </div>
    </div>
    
     {{additionalOptions}}
</div>

【讨论】:

    【解决方案2】:

    假设您要显示side_dish 的输入字段:

    • additionalOptions 是一个只有一个元素的数组,因此您必须选择 [0] 然后获取 side_dish 属性
    • 使用 v-for 迭代 side_dish

    代码:

    <div id="app"> 
        <div v-for="value in additionalOptions[0].side_dish">
            <input type="text" v-model="value" />
        </div>
    </div>
    

    Fiddle

    【讨论】:

    • 对不起,我不太明白你的意思