组长:你熟悉过React,开发个Next项目模板吧,我:怎么扯上关系的?
组长:你熟悉过React,开发个Next项目模板吧,我:怎么扯上关系的?
最近工作安排我开发一个Next.js项目模板,心里默笑,React用得少得都快忘光了,现在得搞Next?虽然我曾是React的老用户,但转投Vue阵营已久,React的点点滴滴早已一干二净。
不过,挑战归挑战,规矩还得照做。
我们通常会用内部工具来搭建新项目的雏形。长久不碰React的我,只能边复习边动手。过了 Next.js文档和找度娘,最终还是根据公司的项目框架写出了第一个版本的企业级模板 —— V1:Next.js-Enterprise-Project-Template。
项目简介
这个项目模板是为初学者快速了解 Next.js 企业项目模板大体框架。通过这个模板,可以快速搭建一个标准化的企业项目,减少重复劳动,提高开发效率。模板中集成了多种现代化的开发工具和框架,确保项目的可维护性和扩展性。
项目特点
基于 Next.js 框架:利用 Next.js 强大的功能和灵活性,提供了服务器端渲染和静态站点生成的最佳实践。 使用 TypeScript:整个项目使用 TypeScript 编写,增强了代码的可维护性和可读性,提供了更好的开发体验。 企业级结构:参考公司现有项目的结构,确保代码组织合理,易于扩展和维护。 现代化工具链:集成了现代化的开发工具和库,提升开发效率。
项目要求
pnpm:版本 >= 8 Node.js:版本 >= v18
集成功能
这个模板集成了多种实用功能,确保项目的高效开发和维护:
标准项目目录:提供了一个标准化的项目目录结构,便于代码组织和管理。 环境配置:集成了环境配置管理,方便在不同环境下进行配置切换。 Ant Design UI 框架:集成了 Ant Design UI 框架,提供丰富的 UI 组件,提升开发效率。 样式框架:集成了 Tailwind CSS 和 styled-components,提供灵活的样式管理方案。 状态管理:集成了 Zustand 轻量级状态管理框架,简化状态管理逻辑。 Git 提交验证:集成了 Git 提交验证,确保代码提交的规范性。 API 请求示例:提供了基本的 API 请求示例,方便快速上手。 重要包排序:整理了项目中重要的包,确保依赖关系清晰。 Prettier 格式配置:集成了 Prettier 格式化配置,确保代码风格一致。 Vitest 测试 :集成了 Vitest 单元测试
快速开始
首先,运行开发服务器:
npm run dev
# 或者
pnpm dev
打开 http://localhost:3000 查看结果。
请注意,如果需要测试 API 请求,请运行以下命令:
cd server
pnpm start
部署到 Vercel
部署 Next.js 应用最简单的方法是使用 Vercel 平台,这是 Next.js 的创建者提供的服务。
请查看我们的 Next.js 部署文档 了解更多详情。
改进点
尽管这个模板已经具备了基本的功能,但仍有一些可以改进的地方:
增加测试覆盖:目前模板中缺少集成测试,可以 Cypress 等测试框架,确保代码的稳定性和可靠性。 优化性能:减少打包体积,提高加载速度。 完善文档:虽然模板已经提供了基本的使用说明,但可以进一步完善文档,增加更多使用示例和最佳实践。 国际化支持:添加对多语言的支持,方便项目在不同地区的推广和使用。 样式管理:引入更多现代化的样式解决方案,提升样式管理的灵活性和可维护性。
欢迎大家提出更多的改进建议。
结语
总的来说,这个 Next.js 企业项目模板是一个非常有价值的工具,特别适合初学者和企业开发者使用。它不仅提供了一个标准化的项目结构,还集成了多种现代化的开发工具和框架,确保项目的高效开发和维护。希望这个模板能帮助你更快地上手 Next.js 开发,并构建出高质量的企业应用。
毕竟,无论学习什么框架,最终都是要在实际项目中应用,为公司或个人带来利益。

组长:你熟悉过React,开发个Next项目模板吧,我:怎么扯上关系的?的更多相关文章
- react 开发 PC 端项目(一)项目环境搭建 及 处理 IE8 兼容问题
步骤一:项目环境搭建 首先,你不应该使用 React v15 或更高版本.使用仍然支持 IE8 的 React v0.14 即可. 技术选型: 1.react@0.14 2.bootstrap3 3. ...
- vue开发:前端项目模板
简介 vue-cli创建vue项目,整合vuex.vue-router.axios.element-ui 项目模板下载地址 创建项目 使用vue-cli创建项目,功能选择:Babel.Router.v ...
- react实战项目开发(1) 搭建react开发环境初始化项目(Create-react-app)
前言 Create React App npm install -g create-react-app create-react-app my-app cd my-app npm start 执行命令 ...
- React开发中react-route-dom使用BrowserRouter部署到服务器上刷新时报404的问题
React项目部署中遇到的问题 react开发中react-route使用BrowserRoute路径在iis服务器上刷新时报404的问题 解决:在发布的项目根目录添加web.config配置文件 在 ...
- 带你了解关于FastAPI快速开发Web API项目中的模板和Jinja
摘要:FastAPI 实际上是为构建 API 和微服务而设计的.它可用于构建使用 Jinja 提供 HTML 服务的 Web 应用程序. 本文分享自华为云社区<FastAPI 快速开发 Web ...
- Spring Boot框架开发的Java项目在CentOS7上的部署
需求:上级拿来一份Spring Boot框架开发的Java项目代码让我在服务器上运行起来,只说了一句该框架是自带了Tomcat(不用重新安装Tomcat),一份代码下有两个项目(一个管理端项目,一个用 ...
- React开发入门
目录: 一.前言 二.什么是React 三.开发环境搭建 四.预备知识 五.最简单的React小程序 六.基础语法介绍 七.总结 八.参考资料 一.前言 近段时间看到学长公司招聘React Nat ...
- Webpack笔记(二)——搭建React开发环境
前几天一直在学习webpack,总算比之前学习的时候有了点收获,所以在昨天发布了一篇webpack入门笔记,今天继续使用webpack练了练手,搭建了一个React开发环境,如果还不熟悉的童鞋可以看一 ...
- redux 介绍及配合 react开发
前言 本文是 Redux 及 Redux 配合 React 开发的教程,主要翻译自 Leveling Up with React: Redux,并参考了 Redux 的文档及一些博文,相对译文原文内容 ...
- 基于Nodejs生态圈的TypeScript+React开发入门教程
基于Nodejs生态圈的TypeScript+React开发入门教程 概述 本教程旨在为基于Nodejs npm生态圈的前端程序开发提供入门讲解. Nodejs是什么 Nodejs是一个高性能Ja ...
随机推荐
- ecnuoj 5039 摇钱树
5039. 摇钱树 题目链接:5039. 摇钱树 感觉在赛中的时候,完全没有考虑分数规划这种做法.同时也没有想到怎么拆这两个交和并的式子.有点难受-- 当出现分数使其尽量大或者小,并且如果修改其中直接 ...
- 基于 Cloudflare Workers 和 cloudflare-docker-proxy 搭建镜像加速服务
本文主要介绍了如何基于 Cloudflare Workers 和 cloudflare-docker-proxy 搭建 dockerhub.gcr.quay 等镜像加速服务. 最近,受限于各种情况,部 ...
- vc++6.0设置字体
vc++6.0设置字体 如上图, 在注册表上找到这个位置. 自已设置FontFace和FontSize即可. 计算机\HKEY_CURRENT_USER\Software\Microsoft\Devs ...
- Fedora升级33->34
Fedora升级33->34 1. dnf --refresh upgrade 2. dnf install dnf-plugin-system-upgrade --best 3. ...
- 记一个,生产遇到的redission锁,释放问题:lock.tryLock(0, 0, TimeUnit.SECONDS)
package com.aswatson.cdc.test; import org.redisson.Redisson; import org.redisson.api.RLock; import o ...
- SqlServer 使用 case when 实现行转列,并创建视图表查询
其实是个很简单的操作了,但长时间不用有点忘记了,正好项目上遇到这样的需求便把过程记录了下来. 一 需求描述 将河道水情表 结构如下,现在需要将水位Z字段由行展示转换为列展示.查询结果为展示时间和每个测 ...
- SQL去重distinct方法解析
来源:https://www.cnblogs.com/lixuefang69/p/10420186.html SQL去重distinct方法解析 一 distinct 含义:distinct用来查询不 ...
- PN转232网关模块接扫码枪与CPU通讯
在现代物流.汽车生产线等领域,广泛使用条码扫码枪快速扫描产品条码,提高工作效率.为了保证条码扫码枪与CPU之间的准确通信,PN转232网关模块成为关键部件.本文将深入研究PN转232网关模块(BT-P ...
- [oeasy]python0124_Code_page_437_IBM_5150_点阵式字形码_显示器效果
字符显示器 回忆上次内容 简体和繁体的汉字 字符数量都超级大 感谢王选和陈堃銶等前辈发明了激光照排技术 中文排版从此使用上了gb2312编码 添加图片注释,不超过 140 字(可选) ...
- C#:SqlSugar中时间戳(TimeStamp)的使用
1.数据库建表 CREATE TABLE dbo.Test ( tId INT IDENTITY NOT NULL , tName NVARCHAR (20) NOT NULL , tSalary D ...