CRAからの移行(次のアプリを作成)反応.js
私は最近、反応アプリをブートストラップ
必要条件
NPMスクリプト
必要なスクリプトは
環境変数
環境変数は
ヘッドタグ
ページ固有
ルーティングとページ
ページは、例えば、ファイル名に基づいてルートに関連付けられます.
サービスワーカー
サービスワーカーは、アプリケーションコンポーネントから登録される
サードパーティライブラリ
外部のCSSは
create-react-app
次へ.js主な理由は、アプリケーションをより多くの次のインデックスを作ることによってSEOを改善することでした.サーバー側のレンダリングを有効にするJS.このブログ記事は移行プロセスに必要なステップをカバーします.必要条件
next
パッケージ( version 10 )をインストールする必要があります.NPMスクリプト
必要なスクリプトは
package.json
.build
ビルドの生産使用のためのアプリケーション.next
ディレクトリ).dev
指定したポートの開発サーバを実行します.start
指定したポートの生産サーバを実行します.{
"scripts": {
"build": "next dev -p 1234",
"dev": "next build",
"start": "next start -p 1234"
}
}
環境変数
環境変数は
NEXT_PUBLIC_
ブラウザで使用できます.dev
and start
スクリプトは.env.local
and .env.production.local
ファイル名.// .env.local
NEXT_PUBLIC_API_URL=http://localhost:8080
ヘッドタグ
ページ固有
meta
タグの間のコンポーネント関数に格納する必要がありますHead
からインポートnext/head
) タグ.共通のリンクタグはpages/_document.js
の間Head
からインポートnext/document
) タグ.ViewportとCharsetメタタグは、間の別々のコンポーネントに置かれなければなりませんHead
からインポートnext/head
) 指定されたキー属性を持つタグ.このアプローチでは、デフォルト値が変更されます.他のメタタグは共通のリンクタグと同じ原則に従うべきです.<Head>
<meta
key="viewport"
name="viewport"
content="width=device-width, initial-scale=1"
/>
</Head>
ルーティングとページ
ページは、例えば、ファイル名に基づいてルートに関連付けられます.
pages/home.jsx
にマップされる/home
. デフォルトページディレクトリ./pages
) に変更./src/pages
名前変更src
プロパティnext.config.js
to ./src
. カスタムページが見つかりませんpages/404.js
ファイル.Link
反応ルータからのコンポーネントを交換しなければなりませんLink
コンポーネントnext/link
.// next.config.js
module.exports = {
src: './src'
};
サービスワーカー
サービスワーカーは、アプリケーションコンポーネントから登録される
pages/_app.js
ファイル使用useEffect
フック.function App({ Component, pageProps }) {
useEffect(() => registerServiceWorker(), []);
return <Component {...pageProps} />;
}
サードパーティライブラリ
外部のCSSは
pages/_app.js
ファイル.import 'bootstrap/dist/css/bootstrap.min.css';
Reference
この問題について(CRAからの移行(次のアプリを作成)反応.js), 我々は、より多くの情報をここで見つけました https://dev.to/zsevic/migrating-from-cra-create-react-app-to-next-js-38obテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol