【NextJs】NextJs是什么

简介: 什么是NextJs首先查看NextJs官网给出了如下的解释(官网地址: nextjs.org):The React Framework for the Web. Used by some of the world's largest companies, Next.js enables you to create high-quality web applications with the power of React components总结就是用的公司多,框架水平NB,经住了很多项目的磨练。然后官网就给出了NextJs学习教程,做一个Dashboard网站。如果要看这个教程的话:可

楼主目前投递了一些远程工作,很多公司的技术栈中都有NextJs,楼主在阿里工作的时候几乎没有听过这个框架,也只有看一些技术文章时才偶尔看到这个框架,所以带着对这个框架的好奇,于是撰写了这篇文章。

什么是NextJs

首先查看NextJs官网给出了如下的解释(官网地址: nextjs.org):

The React Framework for the Web. Used by some of the world's largest companies, Next.js enables you to create high-quality web applications with the power of React components

总结就是用的公司多,框架水平NB,经住了很多项目的磨练。然后官网就给出了NextJs学习教程,做一个Dashboard网站。

如果要看这个教程的话:可以看我做好的Github仓库,可以体验下线上效果以及对应的中文教程。教程的有些代码有点问题,可以对照我的仓库进行学习,食用更佳。

链接在此: https://github.com/XinBaoCode/nextjs-dashboard

个人觉得官网的解释还不是很有说服力,于是找了一些比较好的文章。

总结就是服务端渲染+完善的工程化机制

为什么学习NextJs

那么多的前端框架,React, Vue, Angular, Svelte, 为何要多学一门NextJs呢

  • React + Vercel官方背书

React于官方文件内的“推荐的工具链”中提及Next.js,建议将其作为“使用Node.js构建服务器渲染网站”的解决方案。而Vercel和Next都是由同一家公司创建的,部署极为方便

  • 许多公司在用,经住了很多项目的磨练。

我们学好NextJs的话,容易找到相关的工作。

  • NextJs框架的优势,向全栈进发!
  • 服务端渲染 -> 提高性能,方便SEO
  • 性能优化 -> 自动拆分代码 + 支持组件的懒惰加载 + 构建更快等。
  • 内置特性易用且极致 -->next/image+next/link等组件

当然NextJs中也有一定的劣势

  • 页面响应相对于SPA而言更慢 --> 因为页面资源分页面按需加载
  • 开发体验不够友好 --> 开发环境下 NextJS 根据当前页面按需进行资源实时构建

参考链接:一文了解 NextJS 并对性能优化做出最佳实践

如何学习NextJs

由于官方教程已经很详细了,楼主就建议如下学习方式,学习效果不错。

  1. 直接接学习Next官方的实战教程,链接:https://nextjs.org/learn
  2. 然后遇到一些问题去看Next的一些文档,这里我推荐中文的Next文档,链接:https://www.nextjs.cn/docs

NestJs目录结构

相关目录结构如下所示,可能不同Next版本会有区别

.
├── .next        # Next.js的缓存目录,执行run dev和build时生成的
├── .vscode      # Vscode的配置目录
├── app          # 路由页面,相当于以前版本的page
├── node_modules # 依赖库
└── public       # 放置静态资源
└── src          # 可选的文件夹,一般会把pages和app放到里面
├── .eslintrc.json # ESLint 配置文件
├── .gitignore     # 忽略的 Git 文件和文件夹
├── next-env.d.ts # Next.js的TS声明文件
├── next.config.mjs # Next.js 项目中的配置文件,用于定义一些构建和配置选项
├── package-lock.json # 项目配置 PostCSS 的配置文件依赖lock文件
├── package.json # 项目npm相关文件
├── pnpm-lock.yaml # pnpm安装的依赖lock文件
├── postcss.config # 配置 PostCSS 的配置文件
├── README.md     # 项目说明文档
├── tailwind.config # 配置 Tailwind CSS 框架的各种选项和设置
├── tsconfig.json  # ts的相关配置文件。

目录
相关文章
|
10月前
|
JavaScript 前端开发
vuejs及相关工具介绍
vuejs及相关工具介绍
41 0
|
4月前
Vue3+Vite+Pinia+Naive后台管理系统搭建之二:scss 的安装和使用
Vue3+Vite+Pinia+Naive后台管理系统搭建之二:scss 的安装和使用
60 0
nuxt的使用中碰到的问题
nuxt的使用中碰到的问题
55 0
|
JavaScript 前端开发 小程序
Vue 富文本编辑器tinymce的安装教程(前端必备小知识)
Vue 富文本编辑器tinymce的安装教程(前端必备小知识)
320 1
|
存储 SQL JSON
使用 NextJS 和 TailwindCSS 重构我的博客
这是笔者第三次重构博客应用。本文主要是笔者记录重构博客所用的知识和记录,希望以后每周或者每两周能够有一篇文章,记录和总结知识。
1164 0
|
资源调度 前端开发 JavaScript
ant-design-vue+vite主题切换详细步骤(简单案例)
ant-design-vue+vite主题切换详细步骤(简单案例)
806 0
dva和Umi中两个小用法
dva和Umi中两个小用法
197 0
dva创建应用和使用antd中报错解决方案
dva创建应用和使用antd中报错解决方案
86 0
|
存储 JavaScript 前端开发
Nuxt 3 来了!
NuxtJS 让你构建你的下一个 Vue.js 应用程序变得更有信心。这是一个开源的框架,让 Web 开发变得简单而强大。Nuxt 3.0 来了,让我们一起来看看它有哪些让人激动的新特性!
|
JavaScript 前端开发
Dva 初体验
dva 首先是一个基于 redux 和 redux-saga 的数据流方案,然后为了简化开发体验,dva 还额外内置了 react-router 和 fetch,所以也可以理解为一个轻量级的应用框架。
319 0