刚才搜索了一下,貌似有个 2017 的帖子讲这个。前端变化快,大家都知道。
现在 2020 年了,如果创建一个正式项目,前端,还是 react & typescript,更复杂点比如再加上( redux/saga/mobx,等等)。
大家是用 facebook 的 create-react-app,然后npm run eject
,还是自己搭配呢?或者,有没有比较好的 boilerplate 推荐一下?
谢谢!
另,祝大家五一节目快乐!
p.s. 本人自己用 create-react-app 试过,eject 后,感觉好"繁杂"...... p.s. 好痛苦......
1
fancy2020 2020-04-30 18:21:20 +08:00
同样被这个问题困扰过,后来自己弄了个精简版的 boilerplate 项目:
https://github.com/fanchangyong/react-express-starter-kit |
2
yuang 2020-04-30 18:28:33 +08:00 via Android
建议不要 eject,eject 出来的配置太过复杂,改的头大,还不如重新用 webpack 搞
|
3
FreMaNgo 2020-04-30 18:31:33 +08:00
用 cra + react-app-rewired + customize-cra
|
4
randyo 2020-04-30 18:33:34 +08:00 via Android
eject
|
5
Hanggi 2020-04-30 18:34:20 +08:00
ng new app
|
6
lichenshuai12138 2020-04-30 18:44:07 +08:00
@Hanggi hhhh
|
7
well 2020-04-30 18:49:24 +08:00
脚手架:react-boilerplate
git clone --depth=1 github.com/react-boilerplate/react-boilerplate.git |
8
hantsy 2020-04-30 19:05:46 +08:00
react & typescript 还是用 CRA 生成 TS 项目。
添加 ESLINT,Prettier 支持。https://dev.to/robertcoopercode/using-eslint-and-prettier-in-a-typescript-project-53jb 不过,话说回来,TS 和 React 一起用感觉完全不如 Angular 中那么舒服。React 一直在改进 Hooks,但其重心一直是 Function,而不是 OOP 编程体验。对于 OOP 写法,在 React 中一直不受待见,作用 TS 唯一借用 TS 的 Strong Type 代替 Flow 类型检测而已。 |
9
hantsy 2020-04-30 19:13:29 +08:00
不知道 React Create APP 有没有类似 Angular semantics 的机制,就我试用 RCA 的体验,感觉 RCA 出来的项目,添加其它配置也是比较麻烦的。
|
10
ccraohng 2020-04-30 19:18:07 +08:00 via Android
umijs
|
11
lqzhgood 2020-04-30 20:11:21 +08:00
CRA 好难受~~ eject 一时爽 后面更难受……
|
12
woniuppp 2020-04-30 20:27:23 +08:00
umi
|
13
uxstone 2020-04-30 22:09:04 +08:00
参考 CRA 中的 react-scripts 和 templates,自己定制两个 npm 包
以后项目更新也只要修改版本号就行了 原则上就是不要暴露太多与业务无关的脚手架配置,能隐藏到依赖中的尽量隐藏。 |
14
tyrealgray 2020-04-30 22:17:36 +08:00
没事不要 eject,Facebook 给你维护后续各种工具不好吗?
|
15
xuanbg 2020-04-30 22:18:46 +08:00
搞个模板项目,然后都是复制粘贴改一改……
|
16
liuzhaowei55 2020-04-30 22:19:13 +08:00 via Android
用阿里的 umi 最近更新了 3.0 新版本,相比以前配置简化了不少
|
17
VDimos 2020-04-30 22:20:16 +08:00 via Android
CRA eject 这个体验真的糟糕,不知道为什么 react 官方推荐这个方式,相当糟心
|
18
randyo 2020-04-30 22:23:37 +08:00 via Android
不 eject 的话该配置简直不知道有多麻烦,各种报错,还得 eject 出来后才知道怎么改才不报错。说白了就是各种难改,vue-cli 好改多了
|
19
lihongming 2020-05-01 03:20:27 +08:00 via iPhone
umijs+1
虽然可能是 KPI 产物,但真的省事 |
20
vone 2020-05-01 09:49:35 +08:00 via Android
试试 parcel?
|
21
Mutoo 2020-05-01 12:23:34 +08:00
目前用的是 react-boilerplate 在 /develop 上未发布的 5.0 版本,然后自己魔改过。
|
23
DOLLOR 2020-05-01 13:47:29 +08:00 via Android
开始我也不愿 eject,都是在项目内用各种奇技淫巧修修补补,担心 eject 出来的配置太复杂导致失控。但无奈这 CRA 实在是太简陋了,各种修补之后复杂度跟重建 webpack 还有啥区别。
后来果断 eject,发现以前那些奇技淫巧才是在浪费时间。eject 后改那些配置文件没有传说中那么可怕,至少对写过 webpack 的我来说如此。 |
24
ericgui 2020-05-01 14:12:40 +08:00
我现在觉得 parcel + babel 就够用了
|
26
yuanfnadi 2020-05-01 17:06:10 +08:00 via iPhone
umijs
路由,按需加载,antd,ts 还有一大堆东西你都不用管了。 有人专人维护,内部大量使用。 |
27
jinliming2 2020-05-01 20:07:08 +08:00 via iPhone
我是自己搞了一套自用的模板,随时更新,新项目用最新的搭,基本上就是 git clone 然后删 .git 重新 git init,然后 yarn……
create react app 感觉太重了(很多用不到的东西,不想留着 |
28
yazoox OP @jinliming2 能分享一下么?我去看看,学习一下!
thx. |