浅谈vue + webpack项目调试方法步骤

  

题外话:这几个月用vue写了三个项目了,从绊手绊脚开始慢慢熟悉,婶婶的感到语言这东西还是得有点框框架架,太自由了容易乱搞,特别人多的时候。

  

<强>从webpack开始

  

直接进入正题。有人觉得vue项目难调试,是因为用了webpack。所有代码揉在了一起,还加了很多框架代码,根本不知道怎么下手。所以vue + webpack调试要从webpack入手。我们先从一般情况开始说。

  

<代码> -sourcemap

  

webpack配置提供了devtool这个选项,如果设置为“#源图”,则可以生成. map文件,在chrome浏览器中调试的时候可以显示源代码。

        devtool:“#源图”   之前      

然而这个设置实际上没这么简单.webpack官方给出了7个配置项供选择:戳这里

  

浅谈vue + webpack项目调试方法步骤

  

这里不同的配置有些不同的效果,比如是否保留注释,保留行信息等,具体每一条什么意思这里不详解释,有兴趣的童鞋可以参考这篇文章

  

官方默认的是用“# cheap-module-eval-source-map”

        devtool:“# cheap-module-eval-source-map”      

设置好之后,在vue项目调试的时候,代码里面标注调试器的时候就能看到对应的代码了,非常方便。

  

浅谈vue + webpack项目调试方法步骤

  

或者,直接找到对应的文件。在chrome用ctrl(命令)+ p,输入文件名,可以找到对应的源代码。

  

浅谈vue + webpack项目调试方法步骤

  

打断点:

  

浅谈vue + webpack项目调试方法步骤

  

需要注意的是,这里断点会打在下一行,同时一行代码运行在它的下一行才算执行。

  

<代码> -vue-cli

  

vue家的项目脚手架,推荐使用.vue-cli老家在这里
  

  

vue-cli可以帮我们自动搭建项目,首先npm全局安装

        npm安装- g vue-cli      

然后创建一个新的项目

        vue init webpack我的项目      

一路回车,搞的定。(更多配置项请参考上面给出的vue-cli链接)

  

这里从网上下载了一个带webpack的vue项目(跑之前记得npm安装一下)
  

  

浅谈vue + webpack项目调试方法步骤”>,<br/>
  </p>
  <p>从辉煌的文件夹里面就大概能看的出:</p>
  <ul>
  <李> webpack.dev.conf:开发模式用李</>
  <李> webpack.prod。配置:生产模式用李</>
  </ul>
  <p>其中,开发模式提供了devtool为“# cheap-module-eval-source-map”,生产模式根据配置文件夹下的productionSourceMap变量控制是否使用。<br/>
  </p>
  <p>若为真,则devtool为“#源映射”</p>
  <p>其他使用方法一致。非常方便。</p>
  <p> <强>线上调试</强> </p>
  <p>平时开发的时候,我们用webpack的热加载,可以省去挂载调试的步骤,非常方便。但是发布后部署到服务器上,就失去了这个本地优势。</p>
  <p>如果使用挂载文件方式会比较麻烦。由于webpack打出来的文件有版本号这些信息,而且发布一个包看代码量可能需要等待不等,这个方案不实际。但是如果挂载的是热加载到端口下的文件的话,这个问题就很好办了。</p>
  <p> <代码>——热加载</代码> </p>
  <p>在此之前,先来分析一下webpack的热加载原理。</p>
  <p>对项目抓包可以发现这么一个文件:__webpack_hmr </p>
  <p> <img src=

  

这是webpack热加载的服务器推送事件,eventsource类型,功能和websocket有点类似。大致作用是建立一个不会停止的流流链接,服务器发送更新数据回来添加到流的末端,前端读取最新追加的数据,然后动态的更新页面上的东西。

  

接下来我们观察下上文提到的更新数据有哪些。随便更新一个文件,触发热加载,再抓个包,发现有两个.hot-update.json和一个.hot-update.js文件

  

浅谈vue + webpack项目调试方法步骤

浅谈vue + webpack项目调试方法步骤