Vue.jsのcreated
とmounted
の違いをコード例を交えて説明します。
まず、created
はVueインスタンスやコンポーネントが作成された直後に呼び出されます。これはデータの初期化やメソッドのセットアップなど、インスタンスの初期化段階での処理に適しています。以下はcreated
の例です。
Vue.component('example-component', {
created() {
console.log('Component created');
// コンポーネントが作成された直後に実行される処理を記述
},
data() {
return {
message: 'Hello, Vue!'
};
},
methods: {
greet() {
console.log(this.message);
}
}
});
次に、mounted
はコンポーネントがDOMにマウントされた後に呼び出されます。つまり、DOM要素にアクセスするための処理や、外部リソースの読み込みなど、DOMへのアクセスが必要な操作に適しています。以下はmounted
の例です。
Vue.component('example-component', {
mounted() {
console.log('Component mounted');
// コンポーネントがDOMにマウントされた後に実行される処理を記述
this.$nextTick(() => {
// DOMが更新された後に処理を実行したい場合は$nextTickを利用する
console.log('DOM updated');
});
},
data() {
return {
message: 'Hello, Vue!'
};
},
methods: {
greet() {
console.log(this.message);
}
}
});
created
とmounted
の違いをまとめると、created
はコンポーネントが作成された直後に、データの初期化やメソッドのセットアップなどの初期化処理を行うのに適しています。一方、mounted
はコンポーネントがDOMにマウントされた直後に、DOM要素へのアクセスが必要な処理を行うのに適しています。
このように、created
とmounted
はそれぞれ特定のタイミングで実行されるため、それぞれの適切な使い方を理解することが重要です。
コメント