前沿: 脚手架工具一大堆,但若是所有用第三方的脚手架,项目作起来确定束手束脚,想来点差别化的东西都很难,因此最好是整一份本身的脚手架工具,想咋玩咋玩。
阅读了next脚手架和create-react-app脚手架源码,next脚手架过重,create-react-app好像没有服务器端渲染的内容,心血来潮本身写一个,中途会夹杂着两个脚手架工做的源码解读,只要理解了思想,就算照搬过来也是本身东西。哈哈(必然是会参考的)node
脚手架不难,可是涉及到源码解读,可能会分为几个章节,反正最后能实现create-react-app如出一辙的效果,而且支持服务器端渲染。react
kkk-react 这个是脚手架项目,脚手架说白点就是node项目了,但要时时看效果,总不能一直publish到npm,因此须要npm link。
cli-view,这个项目理论上应该是由kkk-react建立出来的,包含一些基本的文件和文件夹,而且
package.json的scripts包含了start,build等构建命令。但由于是开发脚手架啊,这一步能够放到最后来弄,先把打包构建的步骤弄好。npm
详细步骤
在kkk-react目录下, 执行npm init ,编辑package.json中的name为'kkk-react',最后在项目根目录中 执行npm link命令。还有一些细节看截图json
更改package.json中的main,指向lib目录,开发阶段先这么玩,真正发布的时候,应该是新建一个bin字段,里面能够包含命令,当npm install这个脚手架的时候,这些命令生成对应的执行命令到node_modules的bin目录中,这样咱们在项目中就执行了。
开发的时候咱们npm run dev,就能时时编译到lib目录了。segmentfault
至于cli-view同样的,先npm init,而后执行npm link kkk-react。建立一个cs.js
引入kkk-react,就能看到效果了。服务器
能够看到引入后,经过node执行 就打印了咱们在kkk-react输出的测试字段。一样的只是开发阶段这么玩,等一切都搞定了,就是经过npm run xxx,来执行对应的操做了。app
第一篇先这么着了,还只是试试水,争取明天出第二篇工具