2017-04-18 73 views

回答

4

根据文档,v-for允许您遍历对象的属性。

在这种情况下,您的对象是一个名为reasons的关联数组。这意味着,该阵列具有的值列表。第一对()分别为"select1""Select 1"

如何渲染这些对的

好,以提取的值("Select 1")需要声明一对别名等keyvalue,然后使用{{...}}在这种情况下,value别名使其如图此代码示例中:

var selector = new Vue({ 
 
    el: '#selector', 
 
    data: { 
 
    reasons: { 
 
     "select1":"Select 1", 
 
     "select2":"Select 2", 
 
     "select3":"Select 3", 
 
     "select4":"Select 4", 
 
     "select5":"Select 5", 
 
     "select6":"Select 6", 
 
     "select7":"Select 7" 
 
    } 
 
    } 
 
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.2.6/vue.min.js"></script> 
 
<div id="selector"> 
 
    <select> 
 
    <option v-for="(value, key) in reasons" :value="key"> 
 
     {{value}} 
 
    </option> 
 
    </select> 
 
</div>

更新

请记住,HTML标记select对列表中的每个项目使用option标记。现在,这个option标签具有value参数和text像这样的结构:

<select> 
    <option value="select1">Select 1</option> 
    ... 
    <option value="select7">Select 7</option> 
</select> 

所以我们需要分配的数组原因到option标签的每个value参数每个key和渲染阵列的value原因为option标签的文字。

<option v-for="(value, key) in reasons" :value="key"> 
    {{value}} 
</option>