通过实例解析vuejs如何实现调试代码


Posted in Javascript onJuly 16, 2020

基于webpack的配置调试

使用Vue-cli命令行工具初始化基于wabpack模板的项目的命令语法:

npm install -g @vue/cli         # 全局安装vue-cli,版本vue3.x
vue init webpack [my-project] [app-name] # 使用vue-cli初始化一个完整的webpack项目。
cd my-project              # 进入目录
npm install               # 安装依赖 (package.json)
npm start                # 启动开发环境版本

在config/index.js文件中更改devtool配置为source-map:

module.exports = {
   devtool: 'source-map',//默认是:cheap-module-eval-source-map
}

设置为source-map,则可以生成.map文件,在chrome浏览器中调试的时候可以显示源代码,效果如下:

通过实例解析vuejs如何实现调试代码

cheap-module-eval-source-map选项效果:

通过实例解析vuejs如何实现调试代码

webpack中devtool的其它选项各代表什么呢:

  • eval:文档上解释的很明白,每个模块都封装到 eval 包裹起来,并在后面添加 //# sourceURL
  • source-map :这是最原始的 source-map 实现方式,其实现是打包代码同时创建一个新的 sourcemap 文件, 并在打包文件的末尾添加 //# sourceURL 注释行告诉 JS 引擎文件在哪儿
  • hidden-source-map :文档上也说了,就是 soucremap 但没注释,没注释怎么找文件呢?貌似只能靠后缀,譬如 xxx/bundle.js 文件,某些引擎会尝试去找 xxx/bundle.js.map
  • inline-source-map :为每一个文件添加 sourcemap 的 DataUrl,注意这里的文件是打包前的每一个文件而不是最后打包出来的,同时这个 DataUrl 是包含一个文件完整 souremap 信息的 Base64 格式化后的字符串,而不是一个 url。
  • eval-source-map :这个就是把 eval 的 sourceURL 换成了完整 souremap 信息的 DataUrl
  • cheap-source-map :不包含列信息,不包含 loader 的 sourcemap,(譬如 babel 的 sourcemap)
  • cheap-module-source-map :不包含列信息,同时 loader 的 sourcemap 也被简化为只包含对应行的。最终的 sourcemap 只有一份,它是 webpack 对 loader 生成的 sourcemap 进行简化,然后再次生成的。

基于vue-cli的配置调试

vue-cli是基于webpack的打包的效果和上面的一样,只是配置不一样。

在vue.config.js文件中加如下配置即可:

module.exports = {
  configureWebpack: {
    devtool:'souce-map'
  }
}

vscode编辑器调试

vscode 调试一直有问题,debug模式已启动一会就一定卡死,尝试很多方式没成功过

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
让ie运行js时提示允许阻止内容运行的解决方法
Oct 24 Javascript
jQuery ul标签下拉菜单演示代码
Dec 11 Javascript
jtable列中自定义button示例代码
Nov 21 Javascript
JavaScript闭包实例讲解
Apr 22 Javascript
jQuery中eq()方法用法实例
Jan 05 Javascript
JavaScript中定义类的方式详解
Jan 07 Javascript
基于JavaScript实现文字超出部分隐藏
Feb 29 Javascript
浅谈JavaScript函数的四种存在形态
Jun 08 Javascript
jQuery的each循环用法简单示例
Jun 12 Javascript
Bootstrap Validator 表单验证
Jul 25 Javascript
jquery dataTable 获取某行数据
May 05 jQuery
微信小程序 图片宽高自适应详解
May 11 Javascript
详解js中的几种常用设计模式
Jul 16 #Javascript
JS寄快递地址智能解析的实现代码
Jul 16 #Javascript
详解js中的原型,原型对象,原型链
Jul 16 #Javascript
详解Webpack4多页应用打包方案
Jul 16 #Javascript
快速了解Vue父子组件传值以及父调子方法、子调父方法
Jul 15 #Javascript
微信小程序12行js代码自己写个滑块功能(推荐)
Jul 15 #Javascript
TypeScript 引用资源文件后提示找不到的异常处理技巧
Jul 15 #Javascript
You might like
用文本作数据处理
2006/10/09 PHP
ThinkPHP实现事务回滚示例代码
2014/06/23 PHP
thinkPHP连接sqlite3数据库的实现方法(附Thinkphp代码生成器下载)
2016/05/27 PHP
PHP设计模式之装饰器(装饰者)模式(Decorator)入门与应用详解
2019/12/13 PHP
使用jQuery的将桌面应用程序引入浏览器
2010/11/19 Javascript
Javascript 面试题随笔
2011/03/31 Javascript
jQuery LigerUI 插件介绍及使用之ligerDrag和ligerResizable示例代码打包
2011/04/06 Javascript
js原生appendChild的bug解决心得分享
2013/07/01 Javascript
javascript中indexOf技术详解
2015/05/07 Javascript
js同源策略详解
2015/05/21 Javascript
Vuejs 单文件组件实例详解
2018/02/09 Javascript
node.js实现上传文件功能
2019/07/15 Javascript
微信小程序获取位置展示地图并标注信息的实例代码
2019/09/01 Javascript
微信小程序 wxParse插件显示视频问题
2019/09/27 Javascript
[05:15]2018年度CS GO社区贡献奖-完美盛典
2018/12/16 DOTA
[01:01]2020完美高校联赛(秋)西安落幕
2021/03/11 DOTA
Python内置的HTTP协议服务器SimpleHTTPServer使用指南
2016/03/30 Python
python中利用zfill方法自动给数字前面补0
2018/04/10 Python
Python爬虫包BeautifulSoup异常处理(二)
2018/06/17 Python
对Python协程之异步同步的区别详解
2019/02/19 Python
PyQt5组件读取参数的实例
2019/06/25 Python
python保存字典和读取字典的实例代码
2019/07/07 Python
python GUI库图形界面开发之PyQt5切换按钮控件QPushButton详细使用方法与实例
2020/02/28 Python
新手常见Python错误及异常解决处理方案
2020/06/18 Python
Lentiamo丹麦:购买便宜的隐形眼镜
2021/01/13 全球购物
请解释流与文件有什么不同
2016/07/29 面试题
用Java语言将一个键盘输入的数字转化成中文输出
2013/01/25 面试题
毕业生毕业总结的自我评价范文
2013/11/02 职场文书
幼儿园秋游活动方案
2014/01/21 职场文书
大学生学期自我鉴定
2014/03/19 职场文书
优秀会计求职信
2014/07/04 职场文书
代领学位证书毕业证书委托书
2014/09/30 职场文书
2015年员工工作总结范文
2015/04/08 职场文书
2015年党员创先争优公开承诺书
2015/04/27 职场文书
2019年关于小学生课外阅读情况的分析报告
2019/12/02 职场文书
JavaScript文档对象模型DOM
2021/11/20 Javascript