用Webpack構建Vue項目的實踐
最近在內部項目中做了一些基于 vue + webpack 的嘗試,在小范圍和同事們探討之后,還是蠻多同學認可和喜歡的,所以通過本篇文章分享給更多人
開始之前,需要安裝node環(huán)境。(安裝過程在此就不啰嗦了)
1、創(chuàng)建基本結構首先我們要創(chuàng)建一個空文件夾(我這里叫todos,你可以隨便命名)作為項目的根目錄。創(chuàng)建一個沒有任何依賴關系的package.json,可以通過命令行 npm init 創(chuàng)建。
配置下基本信息即可。創(chuàng)建一個index.html文件,這個是顯示在瀏覽器中的頁面。
注意:1、這里的暫時并不存在;2、的數(shù)據(jù)會被vue文件填入。創(chuàng)建一個src文件夾,并在文件夾內新建一個main.js文件:
這樣我們就完成了一個關于vuejs骨架,但是如何讓他運行在瀏覽器中呢,這個時候我們就需要利用webpack打包成js文件了。
2、基本webpack構建創(chuàng)建一個webpack.config.js的文件:
在命令行中安裝webpack:
安裝本地庫(作為dev dependencies),需要在package.js中添加devDependencies的部分:
保存后運行:npm install然后,vuejs庫安裝到你的dependencies中:
最后運行webpack進行打包:
3、vue-loader和.vue文件什么是vue-loader?vue-loader是webpack下loader插件,可以將.vue文件輸出成組件。創(chuàng)建一個文件夾叫component,并在文件夾內新建一個app.vue文件,app.vue內容如下:
然后修改main.js的代碼,如下:
重新運行一下,我們看到有報錯了:
webpack
不知道怎么去處理 .vue 的新語法。所以需要修改下webpack配置文件:
同時,在package.json加入一些庫:
新加庫以后,再重新npm install下載依賴包,然后重新打包一下:
重新刷新下瀏覽器就可以看到最新頁面了。4、熱模塊替代/熱更新熱模塊替代或熱更新是當今最熱門新的技術。它讓你保存JavaScript文件,就把對應的組件實時更新。首先,我們需要用webpack的dev server。修改你的devDependencies在package.json.
然后再命令窗口中執(zhí)行cnpm install。下載好依賴包后,再下載webpack-dev-server,執(zhí)行命令行cnpm install -g webpack-dev-server,然后把腳本加入到package.json中
運行命令行 npm run dev:
這里看到有一大段內容,我們要運行http://localhost:8080/才能看到效果。在這里值得一提的是:之前我們在webpack.config.js里面是沒有設置publicPath的,但是如果使用webpack-dev-server,你會發(fā)現(xiàn),這個不會有更新。我們來試驗一下:在package.json文件中,將publicPath注釋掉:
app.vue代碼如下:
輸入命令npm run dev,在瀏覽器中顯示:
當將頁面修改成:
刷新瀏覽器,顯示未變。此時,若將publicPath注釋取消,重新再輸入命令行,刷新瀏覽器,此時顯示更新:
且不需要重新輸命令行,修改代碼后,都會更新。這個時候你會發(fā)現(xiàn):如果我們修改的時template里面的html,這個時候,瀏覽器會秒變,并不需要刷新瀏覽器,比如:
但是如果你是將data數(shù)據(jù)更新,就必須要刷新下瀏覽器才行。(在這個地方我花了差不多快半個小時的時候才知道這個情況,我以為是我的代碼寫得有問題,才發(fā)現(xiàn),原來更新template不需要刷新,而更新里面的data是需要刷新的。至于為什么,我也不知道。)
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
企業(yè)微信掃碼登錄網(wǎng)頁功能實現(xiàn)代碼
這篇文章主要介紹了企業(yè)微信掃碼登錄網(wǎng)頁功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-01-01淺談js停止事件冒泡 阻止瀏覽器的默認行為(阻止超連接 #)
下面小編就為大家?guī)硪黄獪\談js停止事件冒泡 阻止瀏覽器的默認行為(阻止超連接 #)。2017-02-02JavaScript實現(xiàn)網(wǎng)頁頭部進度條刷新
這篇文章主要介紹了JavaScript實現(xiàn)網(wǎng)頁頭部進度條刷新實例代碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-04-04javascript數(shù)組克隆簡單實現(xiàn)方法
這篇文章主要介紹了javascript數(shù)組克隆簡單實現(xiàn)方法,實例分析了JavaScript中concat用于數(shù)組克隆的使用技巧,需要的朋友可以參考下2015-12-12