讲讲我学习 React 遇到的那些坑 vol.2

link:

总的来说

React 放弃了 Create React App这个程序,创建一个新的React应用则直接使用了 Next.js

好消息:变得简单了
坏消息:变得复杂了

为啥还能有个二象性呢?

路由(better)

简单了是指,使用了NextJS之后,默认就会有路由,不再需要再集成了,因为每个项目必然会有路由,每次都要再重新集成 这显得很傻。

Rendering & SEO(better)

渲染将会动静结合,更利于搜索引擎抓取内容。

更复杂的目录结构 (worse)

/app,/pages,/.next/,/src,/next.config.js,/tsconfig.json

等各种各样的文件,无从上手

默认输出的构建路经是 .next, 把这个目录隐藏起来 是为了怕别人发现打包在哪了吗???

而且还不是HTML输出的,所以想要构建一个静态Web页面,首先就要改 next.config.js

const nextConfig = {
    distDir: 'build',
    output: 'export',
}

更难以和其他UI框架配合(worse)

我之前一直使用 ChakraUI, 和 CRA 配合蛮好的,但现在却很难以集成了。

所以现在换到了 NextUI,好在 NextUI 做的还不错。

但似乎更难以和其他UI配合了?

全栈结构(neutral)

为啥要在这点上保持中性呢

全栈结构可以使得编写一个可以提供服务的应用更容易,也可以在渲染上做出更多花样。

但是这也显著提升了 普通静态页面的复杂度。

几年前,我们一直在强调 前后端分离,但这点实际上对一个应用程序来讲 并不友好

像GPT类的应用,直接使用了python的程序来开发web demo

Docker类应用则会提供一个端口来访问GUI

后端类应用在集成前端,现在 前端应用也在集成服务提供一整个App了…