Next.js 零基础开发入门教程2 构建基础脚手架 2024最新更新中|曲速引擎 Warp Drive
开发目标
我们将构建一个简化版本的财务仪表板,其内容包括:
公共主页、登录页面、受身份验证保护的仪表板页面、用户可以添加、编辑和删除发票
这篇文章先创建一个简单的nextjs脚手架页面
安装pnpm包管理器
接上一篇,开发环境都准备好之后,我们来做创建项目的准备,首先先判断上一篇的环境是否配置完整,输入 node -v 和 npm -v,我们当前开发采用v20.17.0 版本和10.8.2版本,npm的版本影响不大更新到最新即可,node的版本尽量按照我的参考版本进行。
安装pnpm,这是一个包管理器,它比npm或更快、更高效yarn,npm install -g pnpm,安装完成之后 pnpm -v 查看版本,如果正常输出版本则安装成功。
创建nextjs项目
使用pnpm进行安装新的项目脚手架 npx create-next-app@latest . --use-pnpm ,当使用国内网络进行安装的时候会变得非常的缓慢,一直转圈圈
因此这里需要使用国内的镜像源进行安装,我们这里使用淘宝镜像源地址:https://registry.npmmirror.com
使用命令 pnpm config set registry https://registry.npmmirror.com 将官方源改成淘宝的镜像源地址
然后所有选择按回车键即可,等待下载完毕
运行nextjs项目
在终端命令行执行pnpm run dev即可运行我们的第一个nextjs网站
然而,我们会发现http://localhost:3000 在我们本地浏览器并不能访问,由于我们开发的时候使用的是远程开发,localhost的地址相当于服务端的本地地址,因此在客户端是不能访问的,这里我们需要对package.json文件进行改造一下。
将dev修改为 "dev": "next dev -H 0.0.0.0 -p 80", 也就是下面图片的样子
再次运行pnpm run dev 即可将服务端的网站映射出来,这里我们使用http://172.16.100.104进行访问,这里要注意,IP为你的服务端IP与本教材不一定一样,端口也可能不是80,实际按照自己方便修改,需要注意一下

以上就是nextjs基本项目的创建过程,下一篇将介绍如何改造这个脚手架,变成自己的网站实现需要的功能。
nextjs的一些基本概念
一、什么是npm、pnpm 、npx
npm (Node Package Manager),npm 是 Node.js 的默认包管理器。它主要用于:安装 JavaScript 包、管理项目依赖、运行脚本
# 安装包
npm install package-name
# 运行脚本
npm run script-name
pnpm (Performant npm),pnpm 是 npm 的替代品,旨在提高性能和效率:使用硬链接和符号链接来节省磁盘空间,更快的安装速度,更严格的包管理
# 安装 pnpm
npm install -g pnpm
# 使用 pnpm 安装包
pnpm add package-name
npx (Node Package Execute),npx 是一个 npm 包运行器,它可以:执行本地或远程 npm 包中的命令,无需全局安装就能运行包
# 使用 npx 运行包,无需安装
npx create-react-app my-app
npm: 包管理器,用于安装和管理依赖。
pnpm: npm 的高效替代品,节省空间和提高速度。
npx: 用于执行包,特别是一次性使用的命令行工具。
二、nextjs 基本目录代表含义
详细解释:
1.app/:这是 Next.js 13+版本引入的新的应用目录结构。它包含了你的应用程序的路由和页面组件。
2.next.config.mjs :Next.js 的配置文件,用于自定义Next.js的行为,如添加环境变量、配置 webpack 等。
3. next-env.d.ts :包含 Next.js 类型的TypeScript声明文件,确保TypeScript能正确识别Next.js的类型。
4. node_modules/:存放所有项目依赖的目录,通过npm 或pnpm 安装的包都在这里。
5. package.json:定义项目的元数据、脚本和依赖关系的文件。
6.pnpm-lock.yaml : pnpm 的依赖锁定文件,确保团队成员使用相同版本的依赖。
7.postcss.config.mjs : PostcsS 的配置文件,通常用于配置Tailwind CSS 和其他 cSS 处理工具。
8.README.md:项目的说明文档,通常包含项目描述、安装和使用说明等。
9.tailwind.config.ts :Tailwind CSS 的配置文件,用于自定义Tailwind的主题、变体等。
更详细内容查看
独立博客 https://www.dataeast.cn/
CSDN博客 https://blog.csdn.net/siberiaWarpDrive
B站视频空间 https://space.bilibili.com/25871614?spm_id_from=333.1007.0.0
关注 “曲速引擎 Warp Drive” 微信公众号
Next.js 零基础开发入门教程2 构建基础脚手架 2024最新更新中|曲速引擎 Warp Drive的更多相关文章
- 《ASP.NET Core应用开发入门教程》与《ASP.NET Core 应用开发项目实战》正式出版
“全书之写印,实系初稿.有时公私琐务猬集,每写一句,三搁其笔:有时兴会淋漓,走笔疾书,絮絮不休:有时意趣萧索,执笔木坐,草草而止.每写一段,自助覆阅,辄摇其首,觉有大不妥者,即贴补重书,故剪刀浆糊乃不 ...
- D3.js的v5版本入门教程(第十二章)—— D3.js中各种精美的图形
D3.js的v5版本入门教程(第十二章) D3中提供了各种制作常见图形的函数,在d3的v3版本中叫布局,通过d3.layout.xxx,来新建,但是到了v5,新建一个d3中基本的图形的方式变了(我也并 ...
- 【转载】salesforce 零基础开发入门学习(六)简单的数据增删改查页面的构建
salesforce 零基础开发入门学习(六)简单的数据增删改查页面的构建 VisualForce封装了很多的标签用来进行页面设计,本篇主要讲述简单的页面增删改查.使用的内容和设计到前台页面使用的 ...
- 【转载】salesforce 零基础开发入门学习(一)Salesforce功能介绍,IDE配置以及资源下载
salesforce 零基础开发入门学习(一)Salesforce功能介绍,IDE配置以及资源下载 目前国内已经有很多公司做salesforce,但是国内相关的资料确是少之又少.上个月末跳槽去了新 ...
- 【转载】salesforce 零基础开发入门学习(五)异步进程介绍与数据批处理Batchable
salesforce 零基础开发入门学习(五)异步进程介绍与数据批处理Batchable 本篇知识参考:https://developer.salesforce.com/trailhead/for ...
- 【转载】salesforce 零基础开发入门学习(四)多表关联下的SOQL以及表字段Data type详解
salesforce 零基础开发入门学习(四)多表关联下的SOQL以及表字段Data type详解 建立好的数据表在数据库中查看有很多方式,本人目前采用以下两种方式查看数据表. 1.采用schem ...
- 【转载】salesforce 零基础开发入门学习(三)sObject简单介绍以及简单DML操作(SOQL)
salesforce 零基础开发入门学习(三)sObject简单介绍以及简单DML操作(SOQL) salesforce中对于数据库操作和JAVA等语言对于数据库操作是有一定区别的.salesfo ...
- 【转载】salesforce 零基础开发入门学习(二)变量基础知识,集合,表达式,流程控制语句
salesforce 零基础开发入门学习(二)变量基础知识,集合,表达式,流程控制语句 salesforce如果简单的说可以大概分成两个部分:Apex,VisualForce Page. 其中Apex ...
- 基于Nodejs生态圈的TypeScript+React开发入门教程
基于Nodejs生态圈的TypeScript+React开发入门教程 概述 本教程旨在为基于Nodejs npm生态圈的前端程序开发提供入门讲解. Nodejs是什么 Nodejs是一个高性能Ja ...
- 移动H5开发入门教程:12点webAPP前端开发经验
如果你是一名移动H5前端开发人员,25学堂的小编认为下面的分享的12点webAPP前端开发经验是你必须掌握的基础知识点.算是一篇移动H5开发入门教程吧! 1. viewport:也就是可视区域.对于桌 ...
随机推荐
- 社区6月月报 | Apache DolphinScheduler重要修复和优化记录
各位热爱Apache DolphinScheduler的小伙伴们,社区6月月报更新啦!这里将记录Apache DolphinScheduler社区每月的重要更新,欢迎关注. 月度Merge Stars ...
- GAN总结
GAN总结 本篇文章主要是根据GitHub上的GAN代码库[PyTorch-GAN]进行GAN的复习和回顾,对于之前GAN的各种结构的一种简要的概括. Code 关于评价GAN模型的标准 Incept ...
- Java异常 小白版
什么是异常 在程序运行时打断正常程序流程的任何不正常的情况称为错误或异常.异常包括用户造成的异常和 系统造成的异常. 例如:网络连接中断.操作符越界.加载的类找不到 异常产生的原因和分类 1. 异常产 ...
- [nRF24L01+] 1. 硬件设计
nRF24L01pluss_REFERENCE_MODULES.pdf nrf24l01p_product_specification_1_0.pdf 1. 硬件设计 1.1. 实物图 [左边是PCB ...
- HTB-BoardLight靶机笔记
BoardLight靶机笔记 概述 HTB的靶机BoardLight 靶机地址:https://app.hackthebox.com/machines/BoardLight 一.nmap扫描 1)端口 ...
- Mac升级Ventura 13.0.1后无法远程ssh连接服务器
原因 原因是Mac os Ventura升级了ssh到9.0,ssl到3.3.6,而服务器上的sshd还是老版本:服务器上的老版本ssh和ssl无法和mac上的新版本ssh和ssl交互,新版本ssh加 ...
- 【ETL工具】DataX + DataXWeb 初使用过程记录
版本:DataX v202309 DataXWeb 2.1.3预发布版 DataX: Github:https://github.com/alibaba/DataX 功能介绍文档:https://g ...
- python pyqt6 QMenu 设定圆角边框
本来这个没有必要写,但是因为写的过程中,按照网上的写法运行,不知道为什么QMenu的右下角有圆角边框与直角背景颜色会覆盖显示 所以还是有必要写一下 menu = QMenu(self.tool_but ...
- 利用CSS 实现环形百分比进度展示
先看效果图: UI设计了这样的效果,已读人数占总人数的百分比,环形展示. 这里可以用echarts图表,也可以用css实现,因为我是在小程序环境下,考虑到包大小体积,采用了css实现. 核心就是一行代 ...
- JavaScript – CommonJS
前言 既然写了 JavaScript – ES Module, 也就顺便些 CommonJS 呗, 建议先看 ES Module 那篇. 参考 Youtube – Require vs Import ...
