src├── compiler # 编译相关 ├── core # 核心代码 ├── platforms # 不同平台的支持├── server # 服务端渲染├── sfc # .vue 文件解析├── shared # 共享代码
compiler
所有编译相关代码
编译工作可以在构建时做(webpack、vue-loader等),也可以在运行时做(包含构建功能的Vue.js)
编译是一项耗性能的工作,所以更推荐前者-离线编译
core
核心代码
- 内置组件
- 全局API封装
- Vue实例化
- 观察者
- 虚拟DOM
- 工具函数
platforms
跨平台的MVVM框架,它可以跑在Web上,也可以配合Weex跑在native客户端上
Vue.js的入口,2个目录代表两个主要入口,分别打包运行在Web上和Weex上的Vue.js
server
服务端渲染,所有服务的渲染相关的逻辑都在这个目录下
这部分代码是跑在服务端的Node.js,不要和跑在浏览器端的Vue.js搞混
服务端渲染步骤
- 把组件渲染为服务器端的HTML字符串
- 将他们直接发送到浏览器
- 将静态标记“混合”为客户端上完全交互的应用程序
sfc
把.vue文件内容解析成一个Javascript对象
shared
工具方法
会被浏览器端的Vue.js和服务端的Vue.js所共享