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>
ならそのまま)でしか使えない。