Ich habe ein Problem mit VueJS 1.0, und dieses Verhalten funktioniert in VueJS 2.0. Wenn ich in VueJS 1.0 eine Liste von Ganzzahlen habe und ein Ankreuzfeld-V-Modell daran gebunden habe, wird die Liste der Ganzzahlen nicht als überprüftes Attribut abgebildet. HierVueJS Checkbox Model Array von Ints
ist die HTML-
<div id="app">
<div class="col-sm-offset-3 col-sm-4 clearfix text-center">
<h4>On Each Day of The Week</h4>
<label class="checkbox-inline">
<input type="checkbox" id="inlineCheckbox1" v-model="schedules[0].by_days" value="1"> M
</label>
<label class="checkbox-inline">
<input type="checkbox" id="inlineCheckbox2" v-model="schedules[0].by_days" value="2"> Tu
</label>
<label class="checkbox-inline">
<input type="checkbox" id="inlineCheckbox3" v-model="schedules[0].by_days" value="3"> W
</label>
<label class="checkbox-inline">
<input type="checkbox" id="inlineCheckbox4" v-model="schedules[0].by_days" value="4"> Th
</label>
<label class="checkbox-inline">
<input type="checkbox" id="inlineCheckbox5" v-model="schedules[0].by_days" value="5"> F
</label>
<label class="checkbox-inline">
<input type="checkbox" id="inlineCheckbox6" v-model="schedules[0].by_days" value="6"> Sa
</label>
<label class="checkbox-inline">
<input type="checkbox" id="inlineCheckbox7" v-model="schedules[0].by_days" value="7"> Su
</label>
<div class="clearfix"></div>
</div>
By Days: {{ schedules[0].by_days.join(', ') }}
</div>
Dann ist hier das JavaScript:
new Vue({
el: '#app',
data: {
schedules: [
{
'by_days': ["1", 2, 3]
}
]
}
})
Der Ausgang wird "1" haben richtig checkboxed, aber 2 & 3 ganze Zahlen sind und zeigen nicht als aufgegebenes . In VueJS 2.0 funktioniert das, aber nicht VueJS 1.0.
Eine vollständige JSFiddle finden Sie hier: https://jsfiddle.net/qf5gqsg6/
Und auch, weil die Nummer 2 in 'value = "2"' ist eine Zeichenfolge, keine Zahl. –