<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        淺談vue+webpack項目調試方法步驟

        來源:懂視網 責編:小采 時間:2020-11-27 22:30:38
        文檔

        淺談vue+webpack項目調試方法步驟

        淺談vue+webpack項目調試方法步驟:題外話:這幾個月用vue寫了三個項目了,從絆手絆腳開始慢慢熟悉,嬸嬸的感到語言這東西還是得有點框框架架,太自由了容易亂搞,特別人多的時候。 從webpack開始 直接進入正題。有人覺得vue項目難調試,是因為用了webpack。所有代碼揉在了一起,還加了很多框架
        推薦度:
        導讀淺談vue+webpack項目調試方法步驟:題外話:這幾個月用vue寫了三個項目了,從絆手絆腳開始慢慢熟悉,嬸嬸的感到語言這東西還是得有點框框架架,太自由了容易亂搞,特別人多的時候。 從webpack開始 直接進入正題。有人覺得vue項目難調試,是因為用了webpack。所有代碼揉在了一起,還加了很多框架

        題外話:這幾個月用vue寫了三個項目了,從絆手絆腳開始慢慢熟悉,嬸嬸的感到語言這東西還是得有點框框架架,太自由了容易亂搞,特別人多的時候。

        從webpack開始

        直接進入正題。有人覺得vue項目難調試,是因為用了webpack。所有代碼揉在了一起,還加了很多框架代碼,根本不知道怎么下手。所以vue+webpack調試要從webpack入手。我們先從一般情況開始說。

        -sourcemap

        webpack配置提供了devtool這個選項,如果設置為 ‘#source-map',則可以生成.map文件,在chrome瀏覽器中調試的時候可以顯示源代碼。

        devtool: '#source-map'
        

        然而這個設置實際上沒這么簡單。webpack官方給出了7個配置項供選擇: 戳這里

        devtool介紹

        這里不同的配置有些不同的效果,比如是否保留注釋、保留行信息等,具體每一條什么意思這里不詳解釋,有興趣的童鞋可以參考這篇文章

        官方默認的是用 ‘#cheap-module-eval-source-map'

        devtool: '#cheap-module-eval-source-map'

        設置好之后,在vue項目調試的時候,代碼里面標注debugger的時候就能看到對應的代碼了,非常方便。

        debugger

        或者,直接找到對應的文件。在chrome用 'ctrl(command) + p‘,輸入文件名,可以找到對應的源代碼。

        command+p

        打斷點:

        斷點

        需要注意的是,這里斷點會打在下一行。同時一行代碼運行在它的下一行才算執行。

        -vue-cli

        vue家的項目腳手架,推薦使用。vue-cli老家在這里

        vue-cli可以幫我們自動搭建項目,首先npm全局安裝

         npm install -g vue-cli

        然后創建一個新的項目

        vue init webpack my-project

        一路回車,搞定。(更多配置項請參考上面給出的vue-cli鏈接)

        這里從網上下載了一個帶webpack的vue項目(跑之前記得npm install一下)

        vue-cli webpack 

        從bulid文件夾里面就大概能看出:

      1. webpack.dev.conf: 開發模式用
      2. webpack.prod.conf: 生產模式用
      3. 其中,開發模式提供了devtool為'#cheap-module-eval-source-map',生產模式根據config文件夾下的productionSourceMap變量控制是否使用。

        若為true,則devtool為'#source-map'

        其他使用方法一致。非常方便。

        線上調試

        平時開發的時候,我們用webpack的熱加載,可以省去掛載調試的步驟,非常方便。但是發布后部署到服務器上,就失去了這個本地優勢。

        如果使用掛載文件方式會比較麻煩。由于webpack打出來的文件有版本號這些信息,而且發布一個包看代碼量可能需要等待不等,這個方案不實際。但是如果掛載的是熱加載到端口下的文件的話,這個問題就很好辦了。

        -熱加載

        在此之前,先來分析一下webpack的熱加載原理。

        對項目抓包可以發現這么一個文件:__webpack_hmr

        __webpack_hmr

        這是webpack熱加載的服務器推送事件,eventsource類型,功能和websocket有點類似。大致作用是建立一個不會停止的stream流鏈接,服務器發送更新數據回來append到流的末端,前端讀取最新append的數據,然后動態的更新頁面上的東西。

        接下來我們觀察下上文提到的更新數據有哪些。隨便更新一個文件,觸發熱加載,再抓個包,發現有兩個.hot-update.json和一個.hot-update.js文件

        熱加載更新文件

        這些具體做了些啥我不知道,這里就不深究了。應該是根據json里面的數據,達到一個準確更新的效果。

        所以熱更新其實就是監聽服務器上的數據,有修改的話服務器發送數據過來,前端把數據拿來后替換到頁面上這么一個過程。

        -AutoResponder

        接下來談談線上掛載測試,這里推薦一款軟件:fiddler

        fiddler有一個功能叫做AutoResponder,它可以將一個地址指向另一個地址。之所以用這個軟件,是因為它能匹配正則,非常方便。

        AutoResponder

        上一節說到,webpack熱加載用到了這幾類文件

      4. __webpack_hmr
      5. xxxxxxxxxxx.hot-update.json
      6. xxxxxxxxxxx.hot-update.js
      7. 和.html以及其他.js文件一起,我們就可以把這幾個類型的文件掛載上去,達到一個遠程熱更新的效果,設置如下:

        假設:

        線上地址:http://192.168.9.189

        本地服務器地址:http://localhost:8080/

        為了照顧到接口,不能用*全匹配(上圖fiddler里最后一條灰色的)

        request matches respond with
        EXACT:http://192.168.9.189/index.html http://localhost:8080/
        EXACT:http://192.168.9.189/__webpack_hmr http://localhost:8080/__webpack_hmr
        regex:http://192.168.9.189/([^.]+).js$ http://localhost:8080/$1.js
        regex:http://192.168.9.189/(.+).hot-update.json$ http://localhost:8080/$1.hot-update.json
        regex:http://192.168.9.189/(.+).hot-update.js$ http://localhost:8080/$1.hot-update.js

        打開debugger就能發現vue的devtools出來了

        wap端-技巧分享

        手機上調試也沒那么麻煩。和電腦一樣在同一個局域網下,輸入地址就能看到效果了。最近在做一個wap端的vue項目,這里談談一些自己用到的一些小技巧。

      8. iphone可以用safari來檢查元素;android可以用chrome遠程調試
      9. wifi下的http代理可以轉發手機的網絡請求,掛到本機上可以抓包數據
      10. http代理

        手機加載慢的時候,同樣可以使用http代理轉發到主機上,再訪問速度就比較快了

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        淺談vue+webpack項目調試方法步驟

        淺談vue+webpack項目調試方法步驟:題外話:這幾個月用vue寫了三個項目了,從絆手絆腳開始慢慢熟悉,嬸嬸的感到語言這東西還是得有點框框架架,太自由了容易亂搞,特別人多的時候。 從webpack開始 直接進入正題。有人覺得vue項目難調試,是因為用了webpack。所有代碼揉在了一起,還加了很多框架
        推薦度:
        標簽: 方法 辦法 VUE
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 久久午夜免费视频| **一级一级毛片免费观看| 亚洲AV无码一区二区三区久久精品| 国产午夜亚洲精品| 理论秋霞在线看免费| 亚洲免费观看视频| 野花高清在线观看免费3中文| 日产国产精品亚洲系列| 亚洲av永久无码精品漫画 | 久久中文字幕免费视频| 日韩亚洲国产高清免费视频| 亚洲国产精品综合福利专区| 亚洲精品无码mⅴ在线观看| 免费在线观看自拍性爱视频| 91精品免费久久久久久久久| 亚洲欧洲中文日韩av乱码| 亚洲国产成人资源在线软件| 成年网站免费入口在线观看 | 在线视频精品免费| 国产AV无码专区亚洲AV男同| 亚洲国产精品久久久久秋霞小| 免费看又爽又黄禁片视频1000| 亚洲AV无码一区东京热| 95免费观看体验区视频| 情人伊人久久综合亚洲| 99精品免费观看| 亚洲AV无码久久精品狠狠爱浪潮| 99精品视频免费在线观看| 亚洲中文字幕久久精品蜜桃| 国产在线jyzzjyzz免费麻豆| 亚洲精品无码mⅴ在线观看| 久久国产成人亚洲精品影院| 亚洲AV无码专区在线观看成人| 亚洲国产a级视频| 免费国产a理论片| 久久国产亚洲电影天堂| 中文字幕在线观看免费| vvvv99日韩精品亚洲| 久久永久免费人妻精品下载| 国产亚洲人成在线播放| 国产精品无码免费视频二三区|