uni-app Error when using sourcemap for reporting an error Can't resolve original location of error

发布于 1周前 作者 vueper 来自 Uni-App

uni-app Error when using sourcemap for reporting an error Can’t resolve original location of error

示例代码:

src/utils/uni.js (440:44): Error when using sourcemap for reporting an error: Can't resolve original location of error.

操作步骤:

src/utils/uni.js (440:44): Error when using sourcemap for reporting an error: Can't resolve original location of error.

预期结果:

src/utils/uni.js (440:44): Error when using sourcemap for reporting an error: Can't resolve original location of error.

实际结果:

src/utils/uni.js (440:44): Error when using sourcemap for reporting an error: Can't resolve original location of error.

bug描述:

本地开发运行就总提示这个
src/utils/uni.js (440:44): Error when using sourcemap for reporting an error: Can't resolve original location of error.
开发环境 版本号 项目创建方式
PC开发环境操作系统 Windows
PC开发环境操作系统版本号 win11
HBuilderX类型 正式
HBuilderX版本号 4.29
手机系统 Android
手机系统版本号 Android 15
手机厂商 华为
手机机型 ipad
页面类型 vue
vue版本 vue3
打包方式 云端
项目创建方式 HBuilderX

3 回复

我也是,Hbuilder是最新版本4.29.2024093009


太辣鸡了吧,一直报错,开发半小时,解决问题一天

在处理uni-app中使用sourcemap进行错误报告时遇到的“Can’t resolve original location of error”问题,这通常是由于sourcemap文件未能正确生成或者未能正确关联到源代码文件导致的。以下是一些可能的解决方案和相关的代码案例,帮助你排查和解决这个问题。

1. 确保Source Map配置正确

首先,确保你的构建配置中启用了source map。在uni-app中,这通常在vue.config.js或者manifest.json文件中配置。

vue.config.js 示例

module.exports = {
  configureWebpack: config => {
    if (process.env.NODE_ENV === 'production') {
      // 生产环境配置
      config.devtool = 'source-map';
    } else {
      // 开发环境配置
      config.devtool = 'eval-source-map';
    }
  }
};

2. 检查Webpack Loader配置

确保所有相关的loader(如babel-loader, vue-loader等)都配置了source map支持。

babel.config.js 示例

module.exports = {
  presets: [
    '@babel/preset-env',
    '@vue/cli-plugin-babel/preset'
  ],
  sourceMaps: true
};

3. 验证Source Map文件生成

构建项目后,检查输出目录中是否生成了.map文件。这些文件应该与对应的.js.vue文件在同一目录下。

4. 使用Source Map工具验证

使用如source-map-explorer这样的工具来检查生成的source map文件是否有效。这可以帮助你确认source map文件是否正确映射到了源代码。

安装并使用source-map-explorer

npm install -g source-map-explorer
source-map-explorer build/js/app.js

5. 调试和日志

如果以上步骤都未能解决问题,增加构建过程中的日志输出,查看是否有关于source map的错误信息被输出。

增加日志输出示例

vue.config.jsconfigureWebpack中添加自定义的webpack插件来记录更多信息。

const webpack = require('webpack');

module.exports = {
  configureWebpack: config => {
    config.plugins.push(new webpack.DefinePlugin({
      'process.env.DEBUG': JSON.stringify(true)
    }));
    // 其他配置...
  }
};

然后在你的代码中适当位置添加console.log来输出调试信息。

通过上述步骤,你应该能够定位并解决“Can’t resolve original location of error”的问题。如果问题依旧存在,可能需要更深入地检查具体的构建脚本和依赖库的配置。

回到顶部