通过实例解析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 相关文章推荐
用Javascript实现Windows任务管理器的代码
Mar 27 Javascript
使用JavaScript 实现对象 匀速/变速运动的方法
May 08 Javascript
jquery自动将form表单封装成json的具体实现
Mar 17 Javascript
自定义刻度jQuery进度条及插件
Sep 02 Javascript
Immutable 在 JavaScript 中的应用
May 02 Javascript
jQuery封装的屏幕居中提示信息代码
Jun 08 Javascript
浅谈JavaScript for循环 闭包
Jun 22 Javascript
jquery与ajax获取特殊字符实例详解
Jan 08 Javascript
基于jQuery中ajax的相关方法汇总(必看篇)
Nov 08 jQuery
详解微信小程序调用支付接口支付
Apr 28 Javascript
js前端如何写一个精确的倒计时代码
Oct 25 Javascript
vue实现导航菜单和编辑文本的示例代码
Jul 04 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
Mac OS下配置PHP+MySql环境
2015/02/25 PHP
PHP设计模式之装饰者模式代码实例
2015/05/11 PHP
PHP模板引擎smarty详细介绍
2015/05/26 PHP
WordPress中自定义后台管理界面配色方案的小技巧
2015/12/29 PHP
php字符串比较函数用法小结(strcmp,strcasecmp,strnatcmp及strnatcasecmp)
2016/07/18 PHP
Yii框架 session 数据库存储操作方法示例
2019/11/18 PHP
laravel框架模型和数据库基础操作实例详解
2020/01/25 PHP
PHPExcel实现的读取多工作表操作示例
2020/04/14 PHP
jquery插件validate验证的小例子
2013/05/08 Javascript
删除javascript中注释语句的正则表达式
2014/06/11 Javascript
jQuery中noConflict()用法实例分析
2015/02/08 Javascript
javascript中$(function() {});写与不写有哪些区别
2015/08/10 Javascript
php利用curl获取远程图片实现方法
2015/10/26 Javascript
图解prototype、proto和constructor的三角关系
2016/07/31 Javascript
使用Vue-cli 3.0搭建Vue项目的方法
2018/06/07 Javascript
原生JS实现自定义下拉单选选择框功能
2018/10/12 Javascript
解决iview多表头动态更改列元素发生的错误的方法
2018/11/02 Javascript
微信小程序页面间传值与页面取值操作实例分析
2019/04/30 Javascript
适合前端Vue开发童鞋的跨平台Weex的使用详解
2019/10/16 Javascript
JavaScript 作用域scope简单汇总
2019/10/23 Javascript
JS数组属性去重并校验重复数据
2020/01/10 Javascript
JS localStorage存储对象,sessionStorage存储数组对象操作示例
2020/02/15 Javascript
python中常用检测字符串相关函数汇总
2015/04/15 Python
Python使用Beautiful Soup包编写爬虫时的一些关键点
2016/01/20 Python
理解Python中的With语句
2016/03/18 Python
详解Python的Flask框架中生成SECRET_KEY密钥的方法
2016/06/07 Python
Python使用jsonpath-rw模块处理Json对象操作示例
2018/07/31 Python
win10系统下Anaconda3安装配置方法图文教程
2018/09/19 Python
在flask中使用python-dotenv+flask-cli自定义命令(推荐)
2020/01/05 Python
Python接口测试get请求过程详解
2020/02/28 Python
python爬虫学习笔记之Beautifulsoup模块用法详解
2020/04/09 Python
这76道Java面试题及答案,祝你能成功通过面试
2016/04/16 面试题
实习期自我鉴定
2013/10/11 职场文书
大学生职业规划论文
2014/01/11 职场文书
《乌鸦和狐狸》教学反思
2014/02/08 职场文书
中学教师暑期培训方案
2014/08/27 职场文书