Open vianvio opened 4 years ago
一个简单的脚手架内容,具体详情在
https://github.com/HuskyToMa/mj_script.git
针对上面的图片一共分为了3个npm包,4个git仓库,除了mj_script的仓库以外还存在着另外3个仓库
主要使用的话提供了一个cli下载工具
npm i mj-cli -g
使用的话只需要一个命令
mj-cli create | mj-cli create -r yourname
整体架子有了,但是实现上还是有点粗糙,有些点可以讨论,比如alias部分使用@和~的约定,是否会导致维护人员不容易上手? cli部分包装的挺好,但是不使用社区方案的原因是什么? webpack配置部分,三套环境拆分和业务工程可以自定义并没有体现出来,需要再思考一下。
可以对照参考https://github.com/risjs/ris
三套环境的配置: 这个是存在的,webpack.config.js是所有的配置的导出,里面区分了dev以及非dev的环境,在业务代码中可以通过config下的devConfig, preConfig, ProConfig来重新定意思webpack配置,在build或者dev的时候会去查询当前文件是否存在,如果存在就拿来使用
cli不使用社区方案 这个是因为argv_store是我之前自己玩的时候就已经写好的库,针对这种简单的command
对于粗糙的架子 我这边确实也有这样的感觉,有点半成品的味道,代理分割的并不是特别到位,还有点杂糅,我写完之后也还一直在想怎么优化下,这些希望大佬能给点意见
alias的配置 这个问题我这边是觉得并不会有太多问题,以为首先是约定式的内容,如果我们不存在这个约定,那么在写代码的时候本身也会为了方便而去写一个简单路径,而devConfig或者ProConfig中是可以配置的,但是这会存在同一个配置多次编写的问题,我需要修改下将所有的三种环境的配置文件整合成一个文件比较合适
设计一套适合团队使用的react前端脚手架。要求至少达到以下几点: