将vue打包之后,会打包成一个dist目录,在目录下生成了一堆特殊命名的vue.*.js文件,他们分别是什么意思?
文件分类:
| UMD | ComonJS | ES Module | |
| Full | vue.js | vue.common.js | vue.esm.js |
| Runtime-only | vue.runtime.js | vue.runtime.common.js | vue.runtime.esm.js |
| Full(production) | vue.min.js | vue.common.prod.js | |
| Runtime-only(production) | vue.runtime.min.js | vue.runtime.common.prod.js |

如果你需要动态编译模版(比如:将字符串模版传递给template选项,或者通过提供一个挂载元素的方式编写html模版),你将需要编译器,因此需要一个完整的构建包。
当你使用vue-loader或者vueify时,*.vue的vue文件中的模版在构建时会被编译为JavaScript的渲染函数(render)。因此你不需要包含编译器的全量包,只需使用只包含运行时的包即可;
只包含运行时的包体积要比全量包的体积小30%。因此尽量使用只包含运行时的包,如果你需要使用全量包,那么你需要进行如下的配置;
webpack
- moudle.exports={
-
- //...
- resolve:{
- alias:{
- 'vue$':'vue/dist/vue.esm.js'
- }
-
- }
- }
