为什么手机上调试 Vue 页面时 DevTools 看不到源码?
我用 Chrome 连真机调试一个 Vue 项目,页面能打开,但 DevTools 的 Sources 里只看到打包后的 JS,根本找不到原始的 .vue 文件。明明本地开发时 devServer 开着 sourcemap 啊,咋回事?
我的 vue.config.js 里已经设了 productionSourceMap: true,而且本地浏览器调试是正常的。手机连 USB 调试也开了,Chrome 地址栏输入 chrome://inspect 也能识别设备。就是看不到源码,断点都打不了。
<template>
<div class="counter">
<button @click="count++">+1</button>
<p>{{ count }}</p>
</div>
</template>
<script>
export default {
data() {
return { count: 0 }
}
}
</script>
vue.config.js,除了设置productionSourceMap: true,还得确保devtool: 'source-map'在生产环境配置里。手机调试需要明确开启 source map 支持,不然 DevTools 只能看到打包后的代码。记得重新构建项目,然后在手机上刷新页面试试。这问题搞了我好几次,确实容易忽略。