NextJS - 安裝

更新 發佈閱讀 6 分鐘

# Automatic Installation

  • 我們建議使用 create-next-app 開始一個新的 Next.js 應用,它會自動為你設置所有內容。
  • 要建立專案,請執行以下指令:
    Terminal:
    npx create-next-app@latest
  • 安裝過程中,你會看到以下提示:
    Terminal:
    1. 專案名稱是什麼?my-app
    2. 是否使用 TypeScript?No / Yes
    3. 是否使用 ESLint?No / Yes
    4. 是否使用 Tailwind CSS?No / Yes
    5. 是否使用 src/ 目錄?No / Yes
    6. 是否使用 App Router?(建議使用)No / Yes
    7. 是否自訂預設的匯入別名(@/*)?No / Yes
    8. 你想要設定的匯入別名是什麼?@/*
  • 回答提示後,create-next-app 會建立一個以你的專案名稱命名的資料夾,並安裝所需的相依項。
  • 如果你是 Next.js 的新手,請查看專案結構文件,了解應用程式中所有可能的檔案和資料夾。
  • 注意事項:
    • Next.js 現在預設支援 TypeScript、ESLint 和 Tailwind CSS 配置。
    • 你可以選擇在專案的根目錄中使用 src 目錄,以將應用程式的程式碼與配置檔案分開。

# Manual Installation

  • 手動創建一個新的 Next.js 應用時,安裝所需的套件:
    Terminal:
    npm install next@latest react@latest react-dom@latest
  • 開啟 package.json 檔案,並新增以下 scripts:
    package.json:
    {
    "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start",
    "lint": "next lint"
    }
    }
  • 這些 scripts 指的是應用程式開發的不同階段:
    • dev: 執行 next dev,以開發模式啟動 Next.js。
    • build: 執行 next build,以生產環境建構應用程式。
    • start: 執行 next start,啟動 Next.js 生產伺服器。
    • lint: 執行 next lint,設置 Next.js 內建的 ESLint 配置。
  • 建立目錄:
    • Next.js 使用檔案系統路由,應用程式中的路由由檔案結構決定。
  • app 目錄:
    • 對於新應用程式,建議使用 App Router。此路由允許使用 React 的最新功能,是基於社群回饋的 Pages Router 演進版本。
    • 建立 app/ 資料夾,然後新增 layout.tsx 和 page.tsx 檔案,這些檔案會在使用者訪問應用程式的根目錄(/)時渲染。
  • App 資料夾結構:
    • 在 app/layout.tsx 裡創建根佈局,包含必需的 <html> 和 <body> 標籤:
      export default function RootLayout({
      children,
      }: {
      children: React.ReactNode
      }) {
      return (
      <html lang="en">
      <body>{children}</body>
      </html>
      )
      }
    • 在 app/page.tsx 裡創建首頁,並加入一些初始內容:
      export default function Page() {
      return <h1>Hello, Next.js!</h1>
      }
    • 注意事項:如果你忘記建立 layout.tsx,當你執行 next dev 開發伺服器時,Next.js 會自動創建這個檔案。
  • pages 目錄(選擇性):
    • 如果你更喜歡使用 Pages Router,可以在專案根目錄創建 pages/ 資料夾。
    • 在 pages/ 資料夾中新增 index.tsx,這會是你的首頁(/):
      export default function Page() {
      return <h1>Hello, Next.js!</h1>
      }
    • 在 pages/ 資料夾中新增 _app.tsx 檔案,用來定義全域佈局:
      import type { AppProps } from 'next/app'

      export default function App({ Component, pageProps }: AppProps) {
      return <Component {...pageProps} />
      }
    • 在 pages/ 資料夾中新增 _document.tsx 檔案,用來控制伺服器的初始回應:
      import { Html, Head, Main, NextScript } from 'next/document'

      export default function Document() {
      return (
      <Html>
      <Head />
      <body>
      <Main />
      <NextScript />
      </body>
      </Html>
      )
      }
  • 注意事項:
    • 雖然你可以在同一專案中同時使用兩種路由,但 app 目錄中的路由優先於 pages。我們建議在新專案中只使用一種路由,以避免混淆。
  • public 目錄(選擇性):
    • 建立 public 資料夾來存放靜態資源,如圖片、字型等。檔案可以從基底 URL(/)開始在程式碼中引用。

# Run the Development Server

  • 執行 npm run dev 來啟動開發伺服器。
  • 造訪 http://localhost:3000 來查看你的應用程式。
  • 編輯 app/page.tsx(或 pages/index.tsx)檔案,並儲存以在瀏覽器中查看更新後的結果。

# 參考

Next.js Documentation

留言
avatar-img
Learn or Die
0會員
16內容數
分享程式技術
Learn or Die的其他內容
2025/04/27
# Memoized Cache Driver 12.9 新增 memo cache driver,可以對 cache 在做一層 memory cache,比如第一次從 Redis cache 撈,但在同一個 req 當中,之後都可從 PHP Process memory 當中撈 <?php C
2025/04/27
# Memoized Cache Driver 12.9 新增 memo cache driver,可以對 cache 在做一層 memory cache,比如第一次從 Redis cache 撈,但在同一個 req 當中,之後都可從 PHP Process memory 當中撈 <?php C
2025/04/27
每個應用程式的骨架是路由。此頁將介紹網頁路由的基本概念,以及如何在 Next.js 中處理路由。 # 術語 你會在文件中看到這些術語,以下是快速參考: # 元件樹的術語 tree:用來視覺化階層結構的一種約定。例如包含父元件和子元件的元件樹、資料夾結構等。 subtree:tree 的
Thumbnail
2025/04/27
每個應用程式的骨架是路由。此頁將介紹網頁路由的基本概念,以及如何在 Next.js 中處理路由。 # 術語 你會在文件中看到這些術語,以下是快速參考: # 元件樹的術語 tree:用來視覺化階層結構的一種約定。例如包含父元件和子元件的元件樹、資料夾結構等。 subtree:tree 的
Thumbnail
2025/04/24
# Query Builder pipe() Method 12.4 新增 pipe() method 定義在特定 model,且只有該 model 可重複使用時,使用 scope 不一定要定義在 model,可定義在單獨 class,且可在多個 model 中 reuse,使用 tap 不
2025/04/24
# Query Builder pipe() Method 12.4 新增 pipe() method 定義在特定 model,且只有該 model 可重複使用時,使用 scope 不一定要定義在 model,可定義在單獨 class,且可在多個 model 中 reuse,使用 tap 不
看更多
你可能也想看
Thumbnail
本章節將引導你如何建立一個TypeScript開發環境,這包括安裝Node.js、npm和TypeScript,建立一個TypeScript項目,設置編輯器,以及編寫和編譯TypeScript代碼。在完成這些步驟之後,你將能夠編寫、編譯和運行TypeScript代碼。
Thumbnail
本章節將引導你如何建立一個TypeScript開發環境,這包括安裝Node.js、npm和TypeScript,建立一個TypeScript項目,設置編輯器,以及編寫和編譯TypeScript代碼。在完成這些步驟之後,你將能夠編寫、編譯和運行TypeScript代碼。
Thumbnail
本文提供完成訂閱後的相關事項及安裝指引,包括填寫問卷、遠端開通Trading View帳號、指標安裝步驟等。另外也提供影片教學和紙本教學,以及解決安裝問題的方法。
Thumbnail
本文提供完成訂閱後的相關事項及安裝指引,包括填寫問卷、遠端開通Trading View帳號、指標安裝步驟等。另外也提供影片教學和紙本教學,以及解決安裝問題的方法。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
Nuxt 的安裝流程,一起來試試看吧
Thumbnail
Nuxt 的安裝流程,一起來試試看吧
Thumbnail
Express 是一個流行的 web 框架,使用 JavsScript 實現,執行在 node 環境上,主要用來寫後端應用。
Thumbnail
Express 是一個流行的 web 框架,使用 JavsScript 實現,執行在 node 環境上,主要用來寫後端應用。
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
前面已經安裝好IIS後,並且也新建站台了,那麼接下來這篇就會分享如何使用它
Thumbnail
前面已經安裝好IIS後,並且也新建站台了,那麼接下來這篇就會分享如何使用它
Thumbnail
本章目的是為讀者提供有關如何設置JavaScript開發環境的知識,包括在瀏覽器、Node.js和各種編輯器和IDE中編寫和運行JavaScript的信息。此外,本章還介紹了如何架設本地開發伺服器以模擬實際的網頁環境。這些知識對於希望開發前端應用或後端服務的JavaScript開發者來說都是必要的。
Thumbnail
本章目的是為讀者提供有關如何設置JavaScript開發環境的知識,包括在瀏覽器、Node.js和各種編輯器和IDE中編寫和運行JavaScript的信息。此外,本章還介紹了如何架設本地開發伺服器以模擬實際的網頁環境。這些知識對於希望開發前端應用或後端服務的JavaScript開發者來說都是必要的。
Thumbnail
接續上一篇 Step2:VC#專案建立 Step3:IIS新建站台 Step4:VC#架設到IIS中
Thumbnail
接續上一篇 Step2:VC#專案建立 Step3:IIS新建站台 Step4:VC#架設到IIS中
Thumbnail
5 月將於臺北表演藝術中心映演的「2026 北藝嚴選」《海妲・蓋柏樂》,由臺灣劇團「晃晃跨幅町」製作,本文將以從舞台符號、聲音與表演調度切入,討論海妲・蓋柏樂在父權社會結構下的困境,並結合榮格心理學與馮.法蘭茲對「阿尼姆斯」與「永恆少年」原型的分析,理解女人何以走向精神性的操控、毀滅與死亡。
Thumbnail
5 月將於臺北表演藝術中心映演的「2026 北藝嚴選」《海妲・蓋柏樂》,由臺灣劇團「晃晃跨幅町」製作,本文將以從舞台符號、聲音與表演調度切入,討論海妲・蓋柏樂在父權社會結構下的困境,並結合榮格心理學與馮.法蘭茲對「阿尼姆斯」與「永恆少年」原型的分析,理解女人何以走向精神性的操控、毀滅與死亡。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News