JSS Next.jsアプリでSitecoreフォームを実装してください
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Sitecoreフォームを作成し、SitecoreのJSSアプリルートに追加した後、JSSフォームコンポーネントを実装してJSSアプリケーション内でSitecoreフォームをレンダリングできます。
JSSアプリでSitecoreフォームを使用するには、動作するセッションクッキーが必要です。この目的のために:
- 環境でSSLを有効にするか、Sitecoreインスタンスでセキュアクッキーを無効にしている必要があります。
- あなたのNext.js JSSアプリは RESTレイアウトサービスを使っています。
- あなたはサーバーサイドでルートをレンダリングし、関数GetServerSidePropsの実装を使ってフォームを表示します。
JSS Next.jsアプリケーションでSitecoreフォームコンポーネントをレンダリングするには:
-
JSSアプリケーションのルートディレクトリで、次のコマンドを実行して必要なパッケージをインストールします:
npm install @sitecore-jss/sitecore-jss-forms @sitecore-jss/sitecore-jss-react-forms
-
レンダリングアプリのsrcディレクトリにあるコンポーネントファイルで、例えばsrc/components/JssNextForm.tsx、フォームコンポーネントを実装します:
import { Form } from '@sitecore-jss/sitecore-jss-react-forms'; import React from 'react'; import { withRouter } from 'next/router'; import { sitecoreApiHost, sitecoreApiKey } from '../temp/config';
const JssNextForm = ({ fields, router }: any) => (
-
next.config.base.jsファイル内で、CORSや404エラーを防ぐために、接続モードの書き換えに以下の書き換え定義を追加してください。
{ source: '/api/jss/
*', destination: `${jssConfig.sitecoreApiHost}/api/jss/*` }, -
JSSアプリを接続モードで起動してくださいjss start
。