类似 vue 的经过 webpack 打包后的项目如何实现线上调试?

2019-04-24 11:42:40 +08:00
 vevlins

前提如下:

  1. 经过了 webpack 打包,线上环境不带 sourcemap
  2. 通过 code split 分了包,导致有多个 js 文件

看过几篇文章讲线上调试,似乎有两种方案:

一种是把 js map 的 url 映射到本地,在 chrome 的 source 面板中查看源代码进行修改调试.

另外一种是把 js 的 url 映射到本地,在本地修改看页面效果.

但是有如下问题:

  1. 线上的 js 是打包后的 js,而本地改动是改 vue 组件,那么线上 js 对应的本地 js 是 hot update 后的 js 文件?
  2. 线上打包的 js 是带着戳的如?wefsd3s这样,通过正则捕获 url 吗?
  3. 在 build 的时候仍然开启 sourcemap 选项,只是生成的不发上去?如果是这样,那么浏览器在默认情况下是否不会主动发送 map 请求,只有在开启调试面板的才会发送?

大家是怎么调试线上的 bug 呢,尤其是一些只在线上才出现的奇怪问题,还有线上的 sourcemap 大家都是如何处理?

还望不吝赐教!

4355 次点击
所在节点    前端开发
4 条回复
wxsm
2019-04-24 11:51:38 +08:00
通常“只在线上出现的问题”都是 build 以后跟 dev server 不一致的问题,这种你在本地 build 一样能找到问题的。
Raincal
2019-04-24 12:14:34 +08:00
可以试试 Sentry
uTOmOuk3L6sb4MSI
2019-04-24 14:17:47 +08:00
sourcemap
uTOmOuk3L6sb4MSI
2019-04-24 14:19:14 +08:00
sourcemap 本地跑起来,好像线上也可以使用

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/558198

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX