1-5 Vue.js源码目录设计
1-6 vuejs 源码构建
src
|-- compiler # 编译相关
|-- core # 核心代码
|-- platforms # 不同平台的支持
|-- server # 服务器端渲染
|-- sfc # .vue文件解析
|-- shared # 共享代码
Vue使用rollup进行代码编译,它更偏向于js框架的编译,不像webpack包含很多资源的编译,所以它更轻量。
package.json的讲解:
1.main是项目的入口,也就是你每次import Vue from 'Vue’时的文件入口
2.但是webpack从2.0开始是从module作为入口的,是把esm文件作为入口的。
3.vue根据不同的build命令,打包出不同版本的vuejs。比如:module.export = Vue export default vue这些比较明显的区别。是由scripts中的config.js中的builds中format决定的。
4.整个的构建过程是围绕着scripts中的build.js完成的。
- 根据process.argv[2]去决定是否有与weex或者ssr相关的打包任务,如果没有就执行web端的打包流程
- 在config.js中的genConfig方法生成了可以给rollup使用的的对象,供给rollup进行使用进行打包。在做一些开发和生产环境的区分。