Vue3 グローバル API
Vue3 グローバル API は次のとおりです:
| 番号 | API & 説明 | 例 |
|---|---|---|
| 1 | createApp() Vue アプリケーションインスタンスを作成する。通常はクライアントサイドレンダリングに使用されます。 |
const app = createApp(App) |
| 2 | createSSRApp() サーバーサイドレンダリング(SSR)用の Vue アプリケーションインスタンスを作成する。 |
const app = createSSRApp(App) |
| 3 | app.mount() Vue アプリケーションインスタンスを指定された DOM 要素にマウントする。 |
app.mount('#app') |
| 4 | app.unmount() Vue アプリケーションインスタンスをアンマウントする。 |
app.unmount() |
| 5 | app.onUnmount() アンマウント時のコールバック関数を登録する。 |
app.onUnmount(() => { console.log('App is being unmounted') }) |
| 6 | app.component() グローバルコンポーネントを登録し、コンポーネントをどこでも使用できるようにする。 |
app.component('MyComponent', MyComponent) |
| 7 | app.directive() グローバルディレクティブを登録し、カスタムディレクティブを作成できるようにする。 |
app.directive('focus', { mounted(el) { el.focus() } }) |
| 8 | app.use() プラグインをインストールする。プラグインはアプリケーションに追加機能を提供できます。 |
app.use(SomePlugin) |
| 9 | app.mixin() グローバルミックスインを登録し、すべてのコンポーネントに共有データまたはメソッドを提供する。 |
app.mixin({ methods: { globalMethod() { ... } } }) |
| 10 | app.provide() アプリケーション全体に依存関係を提供し、コンポーネント間でデータを共有する。 |
app.provide('key', 'some value') |
| 11 | app.runWithContext() Vue アプリケーションのコンテキストで関数を実行し、コンテキストデータにアクセスできるようにする。 |
app.runWithContext(() => { console.log('Running inside app context') }) |
| 12 | app.version Vue の現在のバージョン番号を取得する。 |
console.log(app.version) |
| 13 | app.config アプリケーションインスタンスのグローバル設定を取得および設定する。 |
app.config.globalProperties.$myProperty = 'value' |
| 14 | app.config.errorHandler グローバルエラーハンドラー関数を設定し、アプリケーションでキャッチされないエラーが発生したときにトリガーする。 |
app.config.errorHandler = (err, vm, info) => { console.error(err) } |
| 15 | app.config.warnHandler グローバル警告ハンドラー関数を設定し、アプリケーション内の警告情報を処理する。 |
app.config.warnHandler = (msg, vm, trace) => { console.warn(msg) } |
| 16 | app.config.performance パフォーマンス監視を有効にし、レンダリングパフォーマンスデータを提供する。 |
app.config.performance = true |
| 17 | app.config.compilerOptions テンプレートコンパイラのオプションを設定し、テンプレートのコンパイル動作を制御する。 |
app.config.compilerOptions.delimiters = ['[[', ']]'] |
| 18 | app.config.globalProperties グローバルプロパティを設定し、アプリケーション内のすべてのコンポーネントからアクセスできるようにする。 |
app.config.globalProperties.$myGlobalProperty = 'value' |
| 19 | app.config.optionMergeStrategies コンポーネントオプションのマージ戦略を定義し、コンポーネントのオプションをマージする方法を制御する。 |
app.config.optionMergeStrategies.methods = (parent, child) => { return { ...parent, ...child } } |
| 20 | app.config.idPrefix Vue インスタンス ID のプレフィックスを設定する。デフォルトは "vue-" です。 |
`app.config.idPrefix = 'myApp-' |
| 21 | app.config.throwUnhandledErrorInProduction 本番環境で未処理のエラーをスローするかどうかを制御する。 |
app.config.throwUnhandledErrorInProduction = false |
| 22 | version Vue の現在のバージョン番号を取得する。 |
console.log(Vue.version) |
| 23 | nextTick() DOM の更新完了後に遅延コールバックを実行し、非同期 DOM 更新を処理するために使用されます。 |
nextTick(() => { console.log('DOM updated') }) |
| 24 | defineComponent() コンポーネントを定義するために使用され、型推論とより簡潔な構文を提供します。 |
export default defineComponent({ name: 'MyComponent' }) |
| 25 | defineAsyncComponent() 非同期コンポーネントを定義する。コンポーネントは必要に応じて遅延読み込みされます。 |
const AsyncComponent = defineAsyncComponent(() => import('./AsyncComponent.vue')) |
アプリケーションインスタンス API
1. createApp()
-
機能: Vue アプリケーションインスタンスを作成する。
-
使用法:
createApp(rootComponent, rootProps) -
パラメータ:
-
rootComponent: ルートコンポーネント。 -
rootProps(オプション): ルートコンポーネントに渡す props。
-
例
import App from './App.vue';
const app = createApp(App);
2. createSSRApp()
-
機能: サーバーサイドレンダリング (SSR) をサポートする Vue アプリケーションインスタンスを作成する。
-
使用法:
createSSRApp(rootComponent, rootProps) -
パラメータ:
-
rootComponent: ルートコンポーネント。 -
rootProps(オプション): ルートコンポーネントに渡す props。
-
例
import App from './App.vue';
const app = createSSRApp(App);
3. app.mount()
-
機能: アプリケーションを DOM 要素にマウントする。
-
使用法:
app.mount(container) -
パラメータ:
-
container: DOM 要素またはセレクター文字列。
-
例
4. app.unmount()
-
機能: アプリケーションインスタンスをアンマウントする。
-
使用法:
app.unmount()
例
5. app.onUnmount()
-
機能: アプリケーションのアンマウント時に呼び出されるコールバック関数を登録する。
-
使用法:
app.onUnmount(callback) -
パラメータ:
-
callback: アンマウント時に呼び出される関数。
-
例
console.log('App unmounted');
});
6. app.component()
-
機能: グローバルコンポーネントを登録または取得する。
-
使用法:
-
登録:
app.component(name, component) -
取得:
app.component(name)
-
-
パラメータ:
-
name: コンポーネント名。 -
component: コンポーネント定義。
-
例
template: '<div>My Component</div>'
});
7. app.directive()
-
機能: グローバルディレクティブを登録または取得する。
-
使用法:
-
登録:
app.directive(name, directive) -
取得:
app.directive(name)
-
-
パラメータ:
-
name: ディレクティブ名。 -
directive: ディレクティブ定義。
-
例
mounted(el) {
el.focus();
}
});
8. app.use()
-
機能: プラグインをインストールする。
-
使用法:
app.use(plugin, options) -
パラメータ:
-
plugin: プラグイン。 -
options(オプション): プラグインオプション。
-
例
app.use(MyPlugin);
9. app.mixin()
-
機能: グローバルミックスインオプション。
-
使用法:
app.mixin(mixin) -
パラメータ:
-
mixin: ミックスインオブジェクト。
-
例
created() {
console.log('Global mixin created');
}
});
10. app.provide()
-
機能: グローバル依存関係を提供する。
-
使用法:
app.provide(key, value) -
パラメータ:
-
key: 依存関係の名前。 -
value: 依存関係の値。
-
例
11. app.runWithContext()
-
機能: 現在のアプリケーションのコンテキストで関数を実行する。
-
使用法:
app.runWithContext(fn) -
パラメータ:
-
fn: 実行する関数。
-
例
console.log('Running with app context');
});
12. app.version
-
機能: Vue のバージョンを取得する。
-
使用法:
app.version
例
13. app.config
-
機能: アプリケーション設定オブジェクト。
-
使用法:
app.config
例
console.error(err);
};
14. app.config.errorHandler
-
機能: グローバルエラーハンドラー関数。
-
使用法:
app.config.errorHandler = (err, vm, info) => {} -
パラメータ:
-
err: エラーオブジェクト。 -
vm: エラーが発生したコンポーネントインスタンス。 -
info: エラーメッセージ。
-
例
console.error('Global error:', err);
};
15. app.config.warnHandler
-
機能: グローバル警告ハンドラー関数。
-
使用法:
app.config.warnHandler = (msg, vm, trace) => {} -
パラメータ:
-
msg: 警告情報。 -
vm: 警告が発生したコンポーネントインスタンス。 -
trace: 警告スタック。
-
例
console.warn('Global warning:', msg);
};
16. app.config.performance
-
機能: パフォーマンストラッキングを有効にする。
-
使用法:
app.config.performance = true
例
17. app.config.compilerOptions
-
機能: テンプレートコンパイラのオプションを設定する。
-
使用法:
app.config.compilerOptions = { /* options */ }
例
18. app.config.globalProperties
-
機能: グローバルプロパティを追加する。
-
使用法:
app.config.globalProperties[key] = value
例
19. app.config.optionMergeStrategies
-
機能: カスタムオプションのマージ戦略。
-
使用法:
app.config.optionMergeStrategies[key] = strategy
例
return child || parent;
};
20. app.config.idPrefix
-
機能: コンポーネント ID のプレフィックスを設定する。
-
使用法:
app.config.idPrefix = 'my-app-'
例
21. app.config.throwUnhandledErrorInProduction
-
機能: 本番環境で未処理のエラーをスローする。
-
使用法:
app.config.throwUnhandledErrorInProduction = true
例
汎用 API
1. version
-
機能: Vue のバージョンを取得する。
-
使用法:
Vue.version
例
2. nextTick()
-
機能: 次の DOM 更新サイクルが終了した後にコールバックを実行する。
-
使用法:
nextTick(callback) -
パラメータ:
-
callback: コールバック関数。
-
例
nextTick(() => {
console.log('DOM updated');
});
3. defineComponent()
-
機能: コンポーネントを定義する。
-
使用法:
defineComponent(options) -
パラメータ:
-
options: コンポーネントオプション。
-
例
const MyComponent = defineComponent({
template: '<div>My Component</div>'
});
4. defineAsyncComponent()
-
機能: 非同期コンポーネントを定義する。
-
使用法:
defineAsyncComponent(loader) -
パラメータ:
-
loader: 非同期ロード関数。
-
例
const AsyncComponent = defineAsyncComponent(() =>
import('./MyComponent.vue')
);