diff --git a/docs/ja/api/README.md b/docs/ja/api/README.md index 43afe97c7..e77e7986e 100644 --- a/docs/ja/api/README.md +++ b/docs/ja/api/README.md @@ -238,6 +238,12 @@ const store = new Vuex.Store({ ...options }) 動的なモジュールを解除します。[詳細](../guide/modules.md#dynamic-module-registration) +### hasModule + +- `hasModule(path: string | Array)` + + 動的なモジュールがすでに登録されているかどうかを確認します。[詳細](../guide/modules.md#dynamic-module-registration) + ### hotUpdate - **`hotUpdate(newOptions: Object)`** diff --git a/docs/ja/guide/modules.md b/docs/ja/guide/modules.md index c8fb33c25..2995afcfe 100644 --- a/docs/ja/guide/modules.md +++ b/docs/ja/guide/modules.md @@ -297,7 +297,13 @@ store.registerModule(['nested', 'myModule'], { `store.unregisterModule(moduleName)` を呼び出せば、動的に登録したモジュールを削除できます。ただしストア作成(store creation)の際に宣言された、静的なモジュールはこのメソッドで削除できないことに注意してください。 -サーバサイドレンダリングされたアプリケーションから状態を保持するなど、新しいモジュールを登録するときに、以前の状態を保持したい場合があります。`preserveState` オプション(`store.registerModule('a', module, { preserveState: true })`)でこれを実現できます。 +また、すでに動的なモジュールが登録されているかどうかを `store.hasModule(moduleName)` メソッドを使って確認することができます。 + +#### ステートの保持 + +サーバサイドレンダリングされたアプリケーションから状態を保持するなど、新しいモジュールを登録するときに、以前の状態を保持したい場合があります。`preserveState` オプション(`store.registerModule('a', module, { preserveState: true })`)でこれを実現できます。 + +`preserveState: true` を設定した場合、モジュールを登録する際、アクション、ミューテーション、そしてゲッターは登録されますがステートは登録されません。これはステートがすでにモジュールに登録されていることを前提としており、ステートを上書きしないようにするためです。 ### モジュールの再利用