Wenn Sie einen Vue-Router mit Routen wie /foo/:val
verwenden, müssen Sie einen Beobachter zu react for parameter changes hinzufügen. Das führt zu etwas lästigem doppelten Code in allen Ansichten, die Parameter in der URL enthalten. Dies könnte wie das folgende Beispiel aussehenBest Practice für das Reagieren auf Parameteränderungen mit dem Vue-Router
:
export default {
// [...]
created() {
doSomething.call(this);
},
watch: {
'$route'() {
doSomething.call(this);
}
},
}
function doSomething() {
// e.g. request API, assign view properties, ...
}
Gibt es eine andere Möglichkeit, dies zu überwinden? Können die Handler für created
und $route
Änderungen kombiniert werden? Kann die Wiederverwendung der Komponente deaktiviert werden, so dass der Beobachter überhaupt nicht benötigt wird? Ich benutze Vue 2, aber das könnte auch für Vue 1 interessant sein.
Hmm. Der Router v1 hatte eine canReuse, aber ich sehe das nicht in v2. Interessant. – ceejayoz
@ceejayoz Sie haben Recht, es war dort aber [wurde entfernt] (https://vuejs.org/guide/migration-vue-router.html#canReuse-false-removed). – str
Nun,! Darsteller diese Frage. – ceejayoz