开发目标

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

这篇文章先创建一个简单的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. 牛客周赛 Round 7

    牛客周赛 Round 7 A-游游的you矩阵_牛客周赛 Round 7 (nowcoder.com) 把四种字符凑一起看看有没有\(y,o,u\)就行 #include <bits/stdc+ ...

  2. 解决 Docker CE 在无根模式(rootless)下无法通过 IPv6 拉取映像的问题

    折腾一天快把我逼疯了 本来 Docker 对 IPv6 的支持就不好,再来个 rootless,雪上加霜 首先,我们要区分 Docker Engine 和 里面的 Image. 拉取映像是 Docke ...

  3. Python 加载 TensorFlow 模型

    1.SavedModel和HDF5加载TensorFlow模型 为了加载一个TensorFlow模型,我们首先需要明确模型的格式.TensorFlow支持多种模型格式,但最常见的两种是SavedMod ...

  4. freertos学习(九)软件定时器

    软件定时器 软件定时器是freeRTOS通过一个硬件定时器,实现的定时器.可以实现不同时长的多个定时任务 不从中断上下文中执行定时器回调函数(不消耗任何处理时间) 实现流程 设置软件定时器,推入定时器 ...

  5. locale 设置

    locale 介绍 在终端中,locale(本地化)设置是指与本地语言.国家和文化偏好有关的环境变量的配置.这些设定决定了程序如何处理和显示字符.时间.日期格式.货币等. 在类 Unix 系统(比如 ...

  6. YAML 使用

    YAML 语言教程 | 阮一峰的网络日志 YAML Reference YAML Tutorial | Tutorials Point YAML (/ˈjæməl/) YAML Ain't Marku ...

  7. Hash表实践 —— 两数之和

    目录 题目背景 解题思路 题目背景 这个题目用常规的双循环就可以完成. 但不是最优解.为什么? 看看他的步骤数: N =[3,2,4] 求结果为6的两个元素坐标如下, 1). 3+2 = 5 不等于 ...

  8. SpringBoot——简介&&入门

    SpringBoot 简介 SpringBoot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程 起步依赖 starter:SpringBoot中常见的 ...

  9. 基于图扑 HT for Web 实现的昼夜切换场景应用

    图扑软件 HT 的案例中有许多白天黑夜效果.这种效果在各类不同的项目中得到了广泛的应用和认可. 白天黑夜效果是视觉设计和交互设计中常见的一种手法.通过细致巧妙地调整色彩.亮度.对比度等视觉参数,即可成 ...

  10. 分布式执行引擎Ray-部署

    1. Ray集群 Ray 有多种部署模式,包括单机,k8s,VM等. 在单机下,可以直接用ray.init来快速启动ray的运行环境,但是如果要在多节点上执行,则必须先部署Ray Cluster. 一 ...