ちょっと書き始めて気づいた変更点を少しまとめる。
テンプレートのルート要素が不要になった。
Vue 2ではtemplate直下の要素は1つしか許されなかった
<template> <div> <h1>title</h1> <p>some content</p> </div> </template>
Vue 3ではこれでも良い
<template> <h1>title</h1> <p>some content</p> </template>
ライフサイクル関連のものは明示的にimportする必要がある
Vue 2のこの図
例えばマウント時の処理はここにそのまま書けた
export default { mounted(){ // ここに記述する console.log('mounted!') } }
Vue 3ではimportして、setupに入れる
import { onMounted } from 'vue' export default { setup() { onMounted(() => { // ここに記述する console.log('mounted!') }) } }