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
留言分享你的想法!
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
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
全球科技產業的焦點,AKA 全村的希望 NVIDIA,於五月底正式發布了他們在今年 2025 第一季的財報 (輝達內部財務年度為 2026 Q1,實際日曆期間為今年二到四月),交出了打敗了市場預期的成績單。然而,在銷售持續高速成長的同時,川普政府加大對於中國的晶片管制......
Thumbnail
全球科技產業的焦點,AKA 全村的希望 NVIDIA,於五月底正式發布了他們在今年 2025 第一季的財報 (輝達內部財務年度為 2026 Q1,實際日曆期間為今年二到四月),交出了打敗了市場預期的成績單。然而,在銷售持續高速成長的同時,川普政府加大對於中國的晶片管制......
Thumbnail
重點摘要: 6 月繼續維持基準利率不變,強調維持高利率主因為關稅 點陣圖表現略為鷹派,收斂 2026、2027 年降息預期 SEP 連續 2 季下修 GDP、上修通膨預測值 --- 1.繼續維持利率不變,強調需要維持高利率是因為關稅: 聯準會 (Fed) 召開 6 月利率會議
Thumbnail
重點摘要: 6 月繼續維持基準利率不變,強調維持高利率主因為關稅 點陣圖表現略為鷹派,收斂 2026、2027 年降息預期 SEP 連續 2 季下修 GDP、上修通膨預測值 --- 1.繼續維持利率不變,強調需要維持高利率是因為關稅: 聯準會 (Fed) 召開 6 月利率會議
Thumbnail
前面已經安裝好IIS後,並且也新建站台了,那麼接下來這篇就會分享如何使用它
Thumbnail
前面已經安裝好IIS後,並且也新建站台了,那麼接下來這篇就會分享如何使用它
Thumbnail
接續上一篇 Step2:VC#專案建立 Step3:IIS新建站台 Step4:VC#架設到IIS中
Thumbnail
接續上一篇 Step2:VC#專案建立 Step3:IIS新建站台 Step4:VC#架設到IIS中
Thumbnail
本章節將引導你如何建立一個TypeScript開發環境,這包括安裝Node.js、npm和TypeScript,建立一個TypeScript項目,設置編輯器,以及編寫和編譯TypeScript代碼。在完成這些步驟之後,你將能夠編寫、編譯和運行TypeScript代碼。
Thumbnail
本章節將引導你如何建立一個TypeScript開發環境,這包括安裝Node.js、npm和TypeScript,建立一個TypeScript項目,設置編輯器,以及編寫和編譯TypeScript代碼。在完成這些步驟之後,你將能夠編寫、編譯和運行TypeScript代碼。
Thumbnail
本章目的是為讀者提供有關如何設置JavaScript開發環境的知識,包括在瀏覽器、Node.js和各種編輯器和IDE中編寫和運行JavaScript的信息。此外,本章還介紹了如何架設本地開發伺服器以模擬實際的網頁環境。這些知識對於希望開發前端應用或後端服務的JavaScript開發者來說都是必要的。
Thumbnail
本章目的是為讀者提供有關如何設置JavaScript開發環境的知識,包括在瀏覽器、Node.js和各種編輯器和IDE中編寫和運行JavaScript的信息。此外,本章還介紹了如何架設本地開發伺服器以模擬實際的網頁環境。這些知識對於希望開發前端應用或後端服務的JavaScript開發者來說都是必要的。
Thumbnail
本文提供完成訂閱後的相關事項及安裝指引,包括填寫問卷、遠端開通Trading View帳號、指標安裝步驟等。另外也提供影片教學和紙本教學,以及解決安裝問題的方法。
Thumbnail
本文提供完成訂閱後的相關事項及安裝指引,包括填寫問卷、遠端開通Trading View帳號、指標安裝步驟等。另外也提供影片教學和紙本教學,以及解決安裝問題的方法。
Thumbnail
Express 是一個流行的 web 框架,使用 JavsScript 實現,執行在 node 環境上,主要用來寫後端應用。
Thumbnail
Express 是一個流行的 web 框架,使用 JavsScript 實現,執行在 node 環境上,主要用來寫後端應用。
Thumbnail
Nuxt 的安裝流程,一起來試試看吧
Thumbnail
Nuxt 的安裝流程,一起來試試看吧
Thumbnail
在過年期間,利用集中時間跟完Mosh Hamedani的Next.js課程,掌握了前端至後端的技術應用。本文分享了學習過程中的收穫與成果,以及對於未來應用的展望。
Thumbnail
在過年期間,利用集中時間跟完Mosh Hamedani的Next.js課程,掌握了前端至後端的技術應用。本文分享了學習過程中的收穫與成果,以及對於未來應用的展望。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News