vue runtime報錯問題


Webpack中導入vue和普通網頁中導入vue的區別
1、 普通網頁導入vue方式

<script></script>

2、 Webpack導入vue方式

Import Vue form ‘vue’

但是:這種方式如果想使用最全的vue功能 的時候會報錯誤  

原因:因為在webpack中使用這種方式導入的vue構造函數,功能不完整,只提供了runtime-only的方式,並沒有像網頁中那樣的使用方式
//回顧包的查找規則
1、在項目的根目錄中有沒有node-module文件夾
2、在node-modules中根據包名,找對應的vue文件夾
3、在vue的文件夾中找到一個就做package.json的包配置文件
4、在package.json文件中,查找一個main屬性【main屬性指定了這個包在被加載的時候,的入口文件】

 

注意看 main所指向的就是Import Vue form ‘vue’ 這句話所導入的vue文件,並不是我們想要的vue.js完整的包 而是runtime.common.js

runtime-only -> 代碼中,不可以有任何的template,使用模板的時候就會報錯誤

runtime-compile->代碼中,可以有template,因為有compile可以編譯template

 

 在使用vue-cli腳手架構建項目時,會遇到一個選項Vue build(vue構建),有兩個選項,Runtime + CompilerRuntime-only,以下為有道翻譯直譯

Runtime + Compiler: recommended for most users

運行時+編譯器:推薦給大多數用戶--有道翻譯

Runtime-only: about 6KB lighter min+gzip, but templates (or any Vue-specificHTML) are ONLY allowed in .vue files - render functions are required elsewhere

僅限運行時:大約6KB的輕量級min+gzip,但是模板(或任何特定於vue的html)只允許在.vue文件中使用——其他地方需要呈現函數 以下為有道翻譯直譯

 

 

解決報錯問題

解決辦法:
第一種:
將這個路徑直接手動改了,改成我們要用的vue.js完成的文件路徑地址
第二種:
在main.js中將Import Vue form ‘vue’改成Import Vue form ‘相對node-module下面完成的vue文件地址
第三種:

 

詳細參考文章

使用Vue腳手架構建項目時Runtime + Compiler和Runtime-only的區別


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM