JSSアプリをJSS 22.3にアップグレードする
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Sitecore JavaScriptレンダリングSDKバージョン22.3では、アプリにいくつかの変更を加える必要があります。
-
まだアップグレードしていない場合は、アプリをJSS 22.1にアップグレードします。
-
Nodeをバージョン22以降にアップグレードします。
-
JSS 22.3リリースノートをよく読んで、アップグレードの意味を理解してください。
このトピックでは、次の方法について説明します。
JSS Next.jsアプリケーションを更新するには、このトピックではなく、JSS Next.jsアプリのJSS 22.1から22.3への詳細なアップグレード ガイド に従ってください。
Angularアプリを更新する
AngularアプリをJSS 22.3にアップグレードするには、複数の変更を行う必要があります。このプロセスのステップ1から6は、次のようにまとめることができます。
-
JssContextServiceとそれに対するすべての参照を更新する (sitecore-jss-angularコンポーネントの一部がアプリケーションの状態に依存するようになったため)。
-
SSRの辞書データを取得する際のパフォーマンスを向上させるために、i18nの初期化を更新しました。
Angularアプリケーションを更新するには:
-
src/app/jss-context.service.tsで、次の手順を実行します。
-
次のimportステートメントを見つけます。
-
このステートメントを次のように置き換えます。
-
BehaviorSubjectインポートを削除します。
-
次のフィールドを削除します。
-
次のgetステートメントを追加し、次に示すようにコンストラクターを置き換えます。
-
this.state.nextのすべてのインスタンスをthis.stateService.setStateに置き換えます。
-
this.state.valueのすべてのインスタンスをthis.stateService.getStateValue()に置き換えます。
-
-
src/app/jss-context.server-side.service.tsで、次の手順を実行します。
-
次のimportステートメントを追加します。
-
JssDataFetcherServiceインポートを削除します。
-
コンストラクタを変更してJssStateService渡し、基本クラスに伝達します。例えば:
-
-
app.module.tsで、HttpClient import文を削除します。
以下は、JSS 22.3に適した更新ファイルの例です。
-
app.server.module.tsで、TransferStateをインポートします。
以下は、JSS 22.3に適した更新ファイルの例です。
-
app/i18n/jss-translation-server-loader.service.tsで、次の手順を実行します。
-
TransferStateを注入します。
-
dictionaryデータがtransferStateに設定されていることを確認します。
以下は、JSS 22.3に適した更新ファイルの例です。
-
-
app/i18n/jss-translation-client-loader.service.tsで、次の手順を実行します。
-
TransferStateを注入します。
-
transferState内の辞書データを確認し、サーバーによって利用可能で提供されている場合はそれを使用します。
以下は、JSS 22.3に適した更新ファイルの例です。
-
-
ルート .gitignoreファイルで、.angularのルールを追加します (まだ追加していない場合)。
-
src/environments/.gitignoreの内容を次のように置き換えます (まだ行っていない場合)。
-
package.jsonで、次のdevDependenciesを更新します。
-
src/tsconfig.app.jsonで、compilerOptionsから次のものを削除します。
-
src/tsconfig.server.jsonについて手順10を繰り返します。
-
tsconfig.jsonで、次のように"types": "node"typeRootsの上に追加します。
-
新しいプラグインアーキテクチャにconfigとgenerate-component-factoryを分割する場合は、次の操作を行います。
-
プラグインファイルをAngularテンプレートからアプリの /scripts/configディレクトリと /scripts/generate-component-factoryディレクトリにコピーします。
-
scripts/bootstrap.tsファイルに./scripts/configと./generate-component-factoryをインポートします。
-
Angularテンプレートからscripts/generate-plugins.tsファイルをコピーし、bootstrap.tsファイルにインポートします。
JSS 22.3に適した更新されたbootstrap.tsファイルの例を次に示します。
-
Reactアプリを更新する
Reactアプリケーションを更新するには:
-
.eslintrcで、次の例に示すように、ecmaVersionを13に設定します。
Vue.jsアプリを更新する
Vue.jsアプリケーションを更新するには:
-
package.jsonでは、次の依存関係は不要になり、削除できます。
-
@vue/server-renderer
-
@vue/compiler-sfc
-
-
次のパッケージを記載されているバージョンに更新します。
テーブル 1.パッケージ
新しいバージョン
vue
^3.5.12
@vue/apollo-option
^4.0.0
@vue/apollo-ssr
^4.0.0
NodeヘッドレスSSR Experience Edgeアプリを更新する
NodeヘッドレスSSR Experience Edgeアプリを更新するには:
-
次のパッケージを記載されているバージョンに更新します。
テーブル2.パッケージ
新しいバージョン
@types/node
^22.9.0
typescript
~5.6.3
NodeヘッドレスSSRプロキシ アプリを更新する
NodeヘッドレスSSRプロキシ アプリを更新するには:
-
次のパッケージを記載されているバージョンに更新します。
テーブル3。パッケージ
新しいバージョン
@types/node
^22.9.0
typescript
~5.6.3
アプリケーションの依存関係を更新する
アップグレードしたアプリケーションを正しく動作させるには、依存関係を更新する必要があります。
依存関係を更新するには:
-
既存のアプリケーションのpackage.jsonファイルで、すべての @sitecore-jssパッケージをバージョン ~22.3に更新します。
-
次のコマンドを使用して依存関係をインストールします。