「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > Next.js ビルド プロセスのカスタマイズ: 初心者ガイド

Next.js ビルド プロセスのカスタマイズ: 初心者ガイド

2024 年 8 月 5 日に公開
ブラウズ:108

Customizing the Next.js Build Process: A Beginner

Next.js は、素晴らしい Web サイトを作成するのに役立つ魔法のキッチンのようなものです。しかし、場合によっては、独自の隠し味を追加したり、キッチンの仕組みを変更したくなることもあります。今日はまさにその方法を学びましょう! Next.js キッチンをカスタマイズする 3 つの方法を検討します:

独自のレシピブックの作成 (カスタム Webpack 構成)
特別な調理テクニックの使用 (高度な Babel 構成)
独自のキッチンをゼロから構築する (カスタム Next.js サーバー)

  1. 独自のレシピブックの作成 (カスタム Webpack 構成) ケーキの焼き方 (Web サイトの構築) を説明するレシピ本 (Webpack) があると想像してください。場合によっては、レシピに独自のひねりを加えたい場合もあります。 Next.js では、next.config.js という特別なファイルを作成することでこれを行うことができます。

例:
ケーキにスプリンクルを追加したいとしますが、レシピにはスプリンクルが含まれていないとします。レシピブックにメモを書いて、常にふりかけを追加することができます。 Next.js では、次のようになります:

// next.config.js
module.exports = {
  webpack: (config, { buildId, dev, isServer, defaultLoaders, webpack }) => {
    // Add your special ingredient (plugin) here
    config.plugins.push(new SprinklesPlugin())
    return config
  },
}
  1. 特別なクッキング テクニックの使用 (高度な Babel 構成)

ケーキをさらに美味しくするために、特別な調理テクニックを使用したい場合があります。 Next.js の世界では、これを行うために Babel と呼ばれるものを使用します。 Babel は、食材を特別な方法で変えることができる魔法のオーブンのようなものです。

普通のケーキをレインボーケーキに変えることができるスーパーオーブン (バベル) があると想像してください。特別な指示を書くことで、オーブンにこれを行うように指示できます。 Next.js では、.babelrc:
というファイルでこれを行うことができます。

{
  "presets": ["next/babel"],
  "plugins": [
    ["styled-components", { "ssr": true }],
    ["transform-rainbow-cake", { "layers": 7 }]
  ]
}

ケーキを焼くと、オーブンが自動的に7層の美しいレインボーケーキに変わります!

  1. 独自のキッチンをゼロから構築する (カスタム Next.js サーバー) 場合によっては、キッチンを完全に制御したい場合もあります。 Next.js では、これは、組み込みのサーバーを使用するのではなく、独自のサーバーを作成することを意味します。

例:
ケーキを作ったり、アイスクリームを提供したりできる独自のスーパーキッチンを構築したいと想像してください。これを行うには、すべてを希望どおりにセットアップする独自の特別なルーム (サーバー ファイル) を作成します。
Express を使用して独自のキッチンを構築する方法は次のとおりです:

const express = require('express')
const next = require('next')

const dev = process.env.NODE_ENV !== 'production'
const app = next({ dev })
const handle = app.getRequestHandler()

app.prepare().then(() => {
  const server = express()

  // Your special ice cream machine
  server.get('/ice-cream', (req, res) => {
    res.json({ flavor: 'vanilla', toppings: ['sprinkles', 'chocolate sauce'] })
  })

  // Let Next.js handle everything else
  server.all('*', (req, res) => {
    return handle(req, res)
  })

  server.listen(3000, (err) => {
    if (err) throw err
    console.log('> Ready on http://localhost:3000')
  })
})

これで、Next.js ケーキを作り、アイスクリームも提供できるスーパー キッチンが完成しました!
Next.js キッチンをカスタマイズするのはとても楽しいですが、そのまま使用しても問題ないことを覚えておいてください。内蔵機能はすでにかなり素晴らしいものです。本当に必要な場合にのみ、独自のひねりを加えてください。
Next.js で楽しく料理しましょう!

リリースステートメント この記事は次の場所に転載されています: https://dev.to/a_shokn/customizing-the-nextjs-build-process-a-beginners-guide-2lho?1 侵害がある場合は、[email protected] に連絡して削除してください。それ
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3