2017-08-15 14 views
1

これはChromeでは動作するようですが、IEでは動作しないようです。理由は何ですか?VueがIEのv-modelによって<select>の値を設定しない

<select v-model="selected"> 
    <option v-for="option in options" :value="option">{{ option.foo }}</option> 
</select> 
var data = [{ foo: 1 }, { foo: 2 }] 

var demo = new Vue({ 
    el: '#demo', 
    data: { 
     selected: null, 
     options: data 
    }, 
    mounted: function() { 
     this.selected = data[1] 
    } 
}) 

http://jsfiddle.net/yMv7y/3267/

関連チケット:https://github.com/vuejs/vue/issues/6209

答えて

1

タイミングのバグのように見えます。 setTimeoutでは、$nextTickを使用しましたが、ではなくを使用しましたが、動作させることができました。

mounted: function() { 
    setTimeout(function() { demo.selected = data[1]; }, 0); 
    } 

Updated fiddle

+0

うん、私はタイムアウトがそれを解決できることに気づきました。代わりに期待していた:) – Johan

+0

私はこれを受け入れています。それがパッチを当てることを祈りましょう。関連するgithubチケットを追加しました – Johan

関連する問題