Next.js:全棧 React 框架,學(xué)了 React 不知道它,就像去了淄博沒吃燒烤

Next.js 是一個全棧 React 框架,專門用于開發(fā) Web 站點,可簡可繁。下到純靜態(tài)博客,上到復(fù)雜的動態(tài)站點,都能駕馭。也是 React 團(tuán)隊推薦使用 的,由 Vercel* 公司創(chuàng)建并維護(hù)。
官網(wǎng)地址:https://nextjs.org/
* Vercel 是一家云計算公司,提供基于云的前端開發(fā)和部署工具。他們的使命是使 Web 開發(fā)更快、更簡單,同時提供高效的性能和安全性。
創(chuàng)建起來也特簡單,裝好 Node 環(huán)境,執(zhí)行下面語句就行:
不過,為了更好的認(rèn)識 Next.js,我們將從頭學(xué)習(xí)如何將一個 React 項目轉(zhuǎn)換成 Next.js 站點。
一個包含簡單 React 項目的 HTML 網(wǎng)頁
接下來,我們將學(xué)習(xí)如何將這個 HTML 網(wǎng)頁轉(zhuǎn)化成一個 Next.js 站點。
逐步創(chuàng)建一個 Next.js 站點
添加依賴包
一個 Next.js 至少包含 3 個依賴:react、react-dom及next。
注意:為了節(jié)省硬盤空間,我這里使用 pnpm 這個包管理器,沒安裝的可以通過 npm install -g pnpm
指令安裝。
修改 HTML 文件
只保留
<script type="text/babel">
里的內(nèi)容將
.html
改成.jsx
后綴,并放入pages
目錄從 react 包中引入
useState
(import { useState } from "react"
),將React.useState
改為useState
移除
ReactDOM.render()
相關(guān)代碼,導(dǎo)出<HomePage>
組件(作為默認(rèn)導(dǎo)出)
pages/index.jsx
增加啟動腳本
修改 package.json
,增加啟動腳本。
啟動開發(fā)服務(wù)器
運行命令 pnpm run dev
,瀏覽器訪問 localhost:3000,現(xiàn)在就能享受到熱更新特性了(英文“Fast Refresh”,即修改組件代碼后,無需刷新,也不會丟失組件狀態(tài),就能享受更新)。

進(jìn)一步學(xué)習(xí)
可以從 Next.js 的工作原理(地址:https://nextjs.org/learn/foundations/how-nextjs-works)?開始,學(xué)習(xí)使用 Next.js 時會涉及到的一些概念及對應(yīng)用法。