我在v-for循环中有这样的选择形式:
<div class="select">
<select v-model="shippingMethod">
<option value="{{shipping.id}}" v-for="shipping in shippingMethods" data-price="{{ shipping.amount}}">{{shipping.description}} - {{shipping.amount / 100}}</option>
</select>
<div class="select__arrow"></div>
</div>
如果我观看我的shippingMethod
模型并运行这样的方法:
updateTotal: function(event){
console.log(this.shippingMethod);
},
我可以获得所选选项的新值。问题是我也需要数据价格值。我怎么能得到它?
答案 0 :(得分:0)
送货方法是一个数组吗?如果是这样,您可以传递数组索引{{shipping.id}}
,而不是将value
作为{{index}}
传递。然后,在updateTotal
方法中,您可以使用this.shippingMethods[this.shippingMethod]
访问当前选项。
整件事情看起来像这样:
<div class="select">
<select v-model="shippingMethod">
<option value="{{index}}" v-for="(shipping, index) in shippingMethods" data-price="{{ shipping.amount}}">{{shipping.description}} - {{shipping.amount / 100}}</option>
</select>
<div class="select__arrow"></div>
</div>
updateTotal: function(event){
console.log(this.shippingMethods[this.shippingMethod]);
},