Ich versuche,() ein gebundenes Kontrollkästchen in Vue.js 2. Ich möchte auf ein bestimmtes dynamisches Kontrollkästchen im monted() - Lebenszyklusereignis, ohne jQuery klicken.Wie kann ich einen Klick auf eine axios gebundene Liste von Kontrollkästchen in Vuejs 2 auslösen?
<script src="https://unpkg.com/vue"></script>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<div id="app">
<div ref='users' v-for="user in users">
<input type='checkbox'
:ref='user.username'
:id='user.id'
:value='user.username' />
<label :for='user.id'>{{ user.name }} [username: {{ user.username }}]</label>
</div>
<div @click="trigger" class="trigger">Click me</div>
</div>
<script>
new Vue({
el: '#app',
data: {
users: ''
},
methods: {
popUsers: function() {
axios.get('https://jsonplaceholder.typicode.com/users').then(res => {
this.users = res.data;
});
},
trigger() {
console.log(this.$refs);
this.$refs.Karianne[0].click();//works
}
},
created: function() {
this.popUsers();
},
mounted: function() {
console.log(this.$refs);
this.$refs.Karianne[0].click(); //doesn't work. i want to "click Karianne" when everything is loaded.
}
})
</script>
Hier ist meine jsfiddle. https://jsfiddle.net/zippyferguson/we8Latcw/21/
diese $ refs.Karianne [0] .click(); funktioniert, wenn Sie auf "Click me" klicken, aber nicht auf "mounted". Zu früh?
es hat nicht funktioniert, wenn ich es in montiert hatte, aber wenn ich in der dann der axios.get setzen in, es funktionierte. Siehe fiddle: https://jsfiddle.net/zippyferguson/we8Latcw/32/ – zippyferguson
scheint so zu sein, ist die Verwendung von [nextTick] https://vuejs.org/v2/api/#Vue-nextTick – zippyferguson
Ok, hast du es versucht Verzögerung seiner Ausführung ein bisschen wie ich oben beschrieben? – Ikbel