Обновление:
Если вам это действительно нужно, вы можете обойти эту проблему с selected
, но обновите версию Vue до последней, потому что с версией, которую вы используете, будут проблемы.
<select :value="x" @input="x = $event.target.value">
<option v-for="o in options" :value="o.id" :selected="x===o.id">{{ o.text }}</option>
</select>
Полный пример здесь
Оригинал:
Все в порядке с вашими привязками. Вы должны получить параметры перед созданием Vue экземпляра, а затем поместить его в data
let options = [
{ text: 'One', id: 1 },
{ text: 'Two', id: 2 },
{ text: 'Three', id: 3 }
]
let app = new Vue({
el: '#app',
data: {
x: 2,
options
}
})
Или использовать обычные Vue ловушки жизненного цикла, такие как created
, и получить параметры в этот момент
let app = new Vue({
el: '#app',
data: {
x: 2,
options: []
},
created () {
this.options = [
{ text: 'One', id: 1 },
{ text: 'Two', id: 2 },
{ text: 'Three', id: 3 }
]
}
})