update vue2 -> vue3, fixes #3747
Was beachtet werden muss bei der Umstellung von vorhandenem Code:
- Die Lifecycle Hooks
beforeDestroy
unddestroyed
gibt es nicht mehr. Dies sind nunbeforeUnmount
undunmounted
. - Das Verhalten von
v-model
hat sich geändert. Die Property ist nicht mehrvalue
sondernmodelValue
und der Emit ist nicht mehrinput
sondernupdate:modelValue
, welcher auch explizit in denemits
der Komponente angegeben werden soll. - Die Komponente
vuedraggable
hat ihr Verhalten geändert. Das<draggable>
-Elemente übernimmt das Erzeugen der Kindknoten nun selber. Dafür braucht es eineitem-key
-Angabe an diesem Element (dort muss ein Attribut der Elemente angegeben werden, das als:key
verwendet wird; kann man meistens direkt aus dem:key
beimv-for
innerhalb des Elements sehen). Der Kindknoten darf selbst keinv-for
machen und muss in einem Element<template #item="{element, index}">
gewrappt sein. Die Angabe vonindex
ist dabei optional. - Wenn Arrays überwacht werden und es wichtig ist, dass jede Änderung erfasst wird, muss noch die Angabe
deep: true
am Watcher ergänzt werden. Beispiel:watch: { // vorher foo(current) { // ... } // nachher foo: { handler(current) { // ... }, deep: true } }
Edited by Jan-Hendrik Willms