开发目标

我们将构建一个简化版本的财务仪表板,其内容包括:
公共主页、登录页面、受身份验证保护的仪表板页面、用户可以添加、编辑和删除发票

这篇文章先创建一个简单的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的更多相关文章

  1. 《ASP.NET Core应用开发入门教程》与《ASP.NET Core 应用开发项目实战》正式出版

    “全书之写印,实系初稿.有时公私琐务猬集,每写一句,三搁其笔:有时兴会淋漓,走笔疾书,絮絮不休:有时意趣萧索,执笔木坐,草草而止.每写一段,自助覆阅,辄摇其首,觉有大不妥者,即贴补重书,故剪刀浆糊乃不 ...

  2. D3.js的v5版本入门教程(第十二章)—— D3.js中各种精美的图形

    D3.js的v5版本入门教程(第十二章) D3中提供了各种制作常见图形的函数,在d3的v3版本中叫布局,通过d3.layout.xxx,来新建,但是到了v5,新建一个d3中基本的图形的方式变了(我也并 ...

  3. 【转载】salesforce 零基础开发入门学习(六)简单的数据增删改查页面的构建

    salesforce 零基础开发入门学习(六)简单的数据增删改查页面的构建   VisualForce封装了很多的标签用来进行页面设计,本篇主要讲述简单的页面增删改查.使用的内容和设计到前台页面使用的 ...

  4. 【转载】salesforce 零基础开发入门学习(一)Salesforce功能介绍,IDE配置以及资源下载

    salesforce 零基础开发入门学习(一)Salesforce功能介绍,IDE配置以及资源下载   目前国内已经有很多公司做salesforce,但是国内相关的资料确是少之又少.上个月末跳槽去了新 ...

  5. 【转载】salesforce 零基础开发入门学习(五)异步进程介绍与数据批处理Batchable

    salesforce 零基础开发入门学习(五)异步进程介绍与数据批处理Batchable   本篇知识参考:https://developer.salesforce.com/trailhead/for ...

  6. 【转载】salesforce 零基础开发入门学习(四)多表关联下的SOQL以及表字段Data type详解

    salesforce 零基础开发入门学习(四)多表关联下的SOQL以及表字段Data type详解   建立好的数据表在数据库中查看有很多方式,本人目前采用以下两种方式查看数据表. 1.采用schem ...

  7. 【转载】salesforce 零基础开发入门学习(三)sObject简单介绍以及简单DML操作(SOQL)

    salesforce 零基础开发入门学习(三)sObject简单介绍以及简单DML操作(SOQL)   salesforce中对于数据库操作和JAVA等语言对于数据库操作是有一定区别的.salesfo ...

  8. 【转载】salesforce 零基础开发入门学习(二)变量基础知识,集合,表达式,流程控制语句

    salesforce 零基础开发入门学习(二)变量基础知识,集合,表达式,流程控制语句 salesforce如果简单的说可以大概分成两个部分:Apex,VisualForce Page. 其中Apex ...

  9. 基于Nodejs生态圈的TypeScript+React开发入门教程

    基于Nodejs生态圈的TypeScript+React开发入门教程   概述 本教程旨在为基于Nodejs npm生态圈的前端程序开发提供入门讲解. Nodejs是什么 Nodejs是一个高性能Ja ...

  10. 移动H5开发入门教程:12点webAPP前端开发经验

    如果你是一名移动H5前端开发人员,25学堂的小编认为下面的分享的12点webAPP前端开发经验是你必须掌握的基础知识点.算是一篇移动H5开发入门教程吧! 1. viewport:也就是可视区域.对于桌 ...

随机推荐

  1. 系统IO常用函数接口

    本文整理归纳了几种常用的系统IO的函数借口,以供读者查阅使用 目录 系统IO与标准IO的区别 打开文件:open 关闭文件:close 文件读取:read 文件写入:write 位置偏移:lseek ...

  2. 同一块石头搬到了两次的List<Map> 转List<dto>的问题

    不多比比 it is shame to talking about this List<Map<String, Object>> maps = reader.readAll() ...

  3. FFmpeg开发笔记(四十八)从0开始搭建直播系统的开源软件架构

    ​音视频技术的一个主要用途是直播,包括电视直播.电脑直播.手机直播等等,甚至在线课堂.在线问诊.安防监控等应用都属于直播系统的范畴.由于直播系统不仅涉及到音视频数据的编解码,还涉及到音视频数据的实时传 ...

  4. String究竟能存储多少字符?

    能存储多少字符,通过以下步骤来看 首先String的length方法返回是int.所以理论上长度一定不会超过int的最大值. 编译器对字符串字面量长度的限制源自Java编译器(如javac)在处理常量 ...

  5. C#应用 - 事件总线

    目录 前言 1,简介 2,设计 2.1 设计思路 2.2 设计实现 2.2.1 IEventData 2.2.2 EventBus 2.2.3 用起来 3,问题 3.1 起缘 3.2 改造 3.3 用 ...

  6. Prism:框架介绍与安装

    Prism:框架介绍与安装 什么是Prism? Prism是一个用于在 WPF.Xamarin Form.Uno 平台和 WinUI 中构建松散耦合.可维护和可测试的 XAML 应用程序框架 Gith ...

  7. vue+xlsx实现表格的导入导出

    前言 前端在开发过程中若是管理系统之类的业务系统,则大多都会涉及到表格的处理,其中最为常见的就是表格的导入导出.有很多办法都可以实现,其中最简单的还是使用插件xlsx. 实现目标 1.对表格数据进行增 ...

  8. .NET 的 Native AOT 现在是什么样的?

    今天要写的这篇文章源自昨天在朋友圈发的文章<UWP 通过 .NET 9 和Native AOT 的支持实现 UWP 应用的现代化>[1],一位小伙伴的对话让我想全面梳理下Native AO ...

  9. 这些年没来得及学习的一些 HTML5 标签

    认识并学习下还没来得及学习的一些 HTML5 标签 <ruby> 标签 HTML <ruby> 元素被用来展示东亚文字注音或字符注释. 比如: <ruby>兄弟&l ...

  10. 教你一招,测试人员如何通过AI提高工作效率!

    伴随着AI技术的兴起,像OpenAI推出的ChatGPT.Microsoft发布的Microsoft 365 Copilot.阿里的通义千问.百度的文心一言.华为的盘古大模型等.很多测试人员开始担心, ...