通过实例解析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 相关文章推荐
分享14个很酷的jQuery导航菜单插件
Apr 25 Javascript
利用JS判断用户是否上网(连接网络)
Dec 23 Javascript
node.js使用require()函数加载模块
Nov 26 Javascript
JavaScript实现拖拽网页内元素的方法
Apr 15 Javascript
JavaScript数组去重的两种方法推荐
Apr 05 Javascript
将JSON字符串转换成Map对象的方法
Nov 30 Javascript
原生javascript实现读写CSS样式的方法详解
Feb 20 Javascript
JS全角与半角转化实例(分享)
Jul 04 Javascript
Node批量爬取头条视频并保存方法
Sep 20 Javascript
vue2路由基本用法实例分析
Mar 06 Javascript
如何基于viewport vm适配移动端页面
Nov 13 Javascript
详解vue中v-for的key唯一性
May 15 Vue.js
详解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
PHP与已存在的Java应用程序集成
2006/10/09 PHP
Php中用PDO查询Mysql来避免SQL注入风险的方法
2013/04/25 PHP
php无限遍历文件夹示例分享
2014/03/04 PHP
php文件类型MIME对照表(比较全)
2016/10/07 PHP
jQuery入门知识简介
2010/03/04 Javascript
在JavaScript中监听IME键盘输入事件
2011/05/29 Javascript
jQuery中实现动画效果的基本操作介绍
2013/04/16 Javascript
JS如何判断移动端访问设备并解析对应CSS
2013/11/27 Javascript
Javascript控制div属性动态变化实例分析
2015/10/08 Javascript
javascript从定义到执行 你不知道的那些事
2016/01/04 Javascript
jQuery中通过ajax的get()函数读取页面的方法
2016/02/29 Javascript
浅谈js的url解析函数封装
2016/06/28 Javascript
js跨域资源共享 基础篇
2016/07/02 Javascript
JavaScript基本类型值-Undefined、Null、Boolean
2017/02/23 Javascript
Vuex和前端缓存的整合策略详解
2017/05/09 Javascript
Extjs 中的 Treepanel 实现菜单级联选中效果及实例代码
2017/08/22 Javascript
使用canvas进行图像编辑的实例
2017/08/29 Javascript
VS Code转换大小写、修改选中文字或代码颜色的方法
2017/12/15 Javascript
vue-cli2打包前和打包后的css前缀不一致的问题解决
2018/08/24 Javascript
JS实现鼠标拖拽盒子移动及右键点击盒子消失效果示例
2019/01/29 Javascript
Vue事件处理原理及过程详解
2020/03/11 Javascript
JS+CSS实现过渡特效
2021/01/02 Javascript
Python发送form-data请求及拼接form-data内容的方法
2016/03/05 Python
Python的爬虫框架scrapy用21行代码写一个爬虫
2017/04/24 Python
Django单元测试工具test client使用详解
2019/08/02 Python
Django发送邮件和itsdangerous模块的配合使用解析
2019/08/10 Python
详解python路径拼接os.path.join()函数的用法
2019/10/09 Python
使用CSS3实现多列布局与多背景的技巧
2016/02/29 HTML / CSS
HTML5 在canvas中绘制矩形附效果图
2014/06/23 HTML / CSS
html5中 media(播放器)的api使用指南
2014/12/26 HTML / CSS
Geekbuying波兰:购买中国电子产品
2019/10/20 全球购物
写好求职应聘自荐信的三部曲
2013/09/21 职场文书
交通安全演讲稿
2014/01/07 职场文书
2015关于重阳节的演讲稿
2015/03/20 职场文书
2016开学第一课心得体会
2016/01/23 职场文书
Nginx缓存设置案例详解
2021/09/15 Servers