Ich versuche herauszufinden, wie native Javascript-Ereignisse auf eine Eingabe ausgelöst werden, vorausgesetzt, ich möchte ein Datenattribut in meiner Vue-Instanz zu aktualisieren.Kann Vuejs2 V-Modell nicht von nativem JavaScript ändern Ereignis ändern
ich gesucht habe ein bisschen auf die Frage (und das ist, wie ich in die Rolle bekam, die die Lösung schlägt vor, eine native JavaScript-Event) aufgrund dieser Beitrag https://github.com/vuejs/vue/issues/96#issuecomment-37870300
So habe ich diesen Eingang:
<input type="text" name="occurred" id="occurred" class="form-control" required="" v-model="occurred">
Und durch Javascript, ich bin versucht zu kapier nativer Ereignis ist, so dass vue v-Modell aktualisieren = "aufgetreten" (ich bin mit pickadate.js)
$('#occurred').pickadate({
format: 'dddd, dd mmm, yyyy',
formatSubmit: 'dd-mm-yyyy',
hiddenPrefix: 'prefix__',
hiddenSuffix: '__suffix'
});
var evt = document.createEvent('HTMLEvents');
evt.initEvent('change', true, true);
var el = document.getElementById("occurred");
el.dispatchEvent(evt);
Ich habe ein paar verschiedene Möglichkeiten ausprobiert, aber ich kann nicht ganz verstehen, wie es funktioniert.
Ich wäre super froh, wenn Sie mir die Lösung erklären könnten, anstatt sie nur so zu geben, wie ich es verstehen will.
Ich habe eine Geige geschaffen, um zu erklären: https://jsfiddle.net/c1askwj2/5/
edit: Eine Lösung ist zu tun, was ich will nicht zu tun. Im Grunde genommen „aussetzen“ View Objekt:
var vueFoo = new Vue({ ... });
Auf diese Weise können sie durch varFoo.thedate zugreifen können und setzen Sie ihn:
$('#thedate').pickadate({
onSet: function(value) {
var date = new Date(value.select);
vueFoo.thedate = date.getDate() + '-' + date.getMonth() + 1 + '-' + date.getFullYear();
}
});
mir Dies ist eine sehr hässliche Lösung, wie Ich mag meine halten Vue-Objekte nicht verfügbar ...
Ihre Lösung ist schön. Ich habe ein wenig Code geändert und möchte Folgendes vorschlagen: https://jsfiddle.net/c1askwj2/7/ Was denkst du? Ich habe deine 'Uhr' nicht verstanden, kannst du es mir erklären? – FPJ