mounted, created など → Composition API の onMounted などcreated(), mounted(), destroyed() などonMounted, onBeforeMount, onUnmounted などの関数を使う// ファイル名: MyComponent.vue (クラス版)
@Component
export default class MyComponent extends Vue {
// created フック
created() {
console.log('created!');
}
// mounted フック
mounted() {
console.log('mounted!');
}
// destroyed フック
destroyed() {
console.log('destroyed!');
}
}
<script setup> 版)】<!-- ファイル名: MyComponent.vue -->
<script setup lang="ts">
// ライフサイクルフックをインポート
import { onMounted, onBeforeMount, onUnmounted } from 'vue';
// created 相当(onBeforeMount が近い)
onBeforeMount(() => {
console.log('created!');
});
// mounted
onMounted(() => {
console.log('mounted!');
});
// destroyed → onUnmounted
onUnmounted(() => {
console.log('destroyed!');
});
</script>
| クラスコンポーネント | Composition API (<script setup>) |
説明 |
|---|---|---|
created() |
onBeforeMount(() => {}) |
コンポーネントがマウントされる直前 |
mounted() |
onMounted(() => {}) |
コンポーネントがマウントされた直後 |
destroyed() |
onUnmounted(() => {}) |
コンポーネントが破棄される直前 |
beforeCreate() |
(基本的に不要、setup が実質それ) | setup 実行時が beforeCreate 相当 |
beforeDestroy() |
onBeforeUnmount(() => {})(※必要なら) |
破棄前 |
this が使えない!
→ 必ず ref などの変数で管理する必要あり。
onMounted の中で ref.value を触る → OK。
ライフサイクル関数は setup の中(<script setup> ならそのまま)でしか使えない。