在我們使用腳手架vuecli初始化一個項目時,會讓你選擇是使用runtime-compiler和runtime-only.
這兩者的我們發現他創建的main.js不一樣。
在選擇runtime-compiler vue的運行過程會將 template --解析--> 成抽象語法樹(ast)--編譯成--> render函數 --->虛擬dom樹 ---->渲染成真實dom
而在runtime-only render函數 ---> 虛擬dom --->真實dom ,runtime-only跳過了template解析成抽象語法樹的步驟,代碼量更少,性能更高
在runtime-only中render的值是一個函數,並且這個函數的參數是一個createElement函數用來創建元素的
我們引入的App組件是一個對象,已經直接將App的template編譯成render函數了。這個過程由vue-template-compiler處理