runtime+compiler和runtime-only怎么选


写在开头,如有错误之处,请各位指出。

在我们创建vue-cli项目时会让我们选择用runtime-compiler还是用runtime-only,那么此时我们应该怎么选呢?

结论:选择runtimeonly,因为性能更高,代码更少


图1

要怎么选,我们得知道他们二者的区别。

新建2个项目,一个选择runtime compiler,一个选择runtimeonly,将二者对比,主要区别在main.js上


图2

在运行vue程序时

runtime+compiler的运行过程是:

template--->ast---->render--->vdom--->UI

注:ast--->Abstract Syntax Tree 抽象语法树; vdom--->Virtual DOM 虚拟dom


runtimeonly的运行过程时:

render--->vdom---->UI

相较于runtimecompiler,runtimeonly直接从render到UI,省略了template--->ast步骤,这样使之代码量更少

那么此时在选择runtimeonly,那么template是谁来执行?是由vue-tempalte-compiler来执行的。

补充:render函数

render函数是用来干啥的?它和template类似,是用来创建html模板的。

render函数有一个参数,即createElement,它本省又是一个函数,有三个参数。

结合代码

图3

图4

你可能感兴趣的:(runtime+compiler和runtime-only怎么选)