在使用 uniapp 导入 SDK 的过程中,您可能会遇到这样的情况:使用 console.log() 打印导入的模块名称时,实际输出的名称并不是您期望的名称。这是因为 uniapp 进行了编译和打包处理后,会将代码重新命名以减小文件大小和提高执行效率,包括修改变量名称、方法名称、模块名称等。

uniapp vue2.0通过import引入外部js(sdk)文件,正常
uniapp vue3.0通过import引入外部js(sdk)文件,报错undefined

原因:
在使用 uniapp 引入第三方库或模块时,如果没有指定导入名称,为了避免命名冲突,则小程序编译工具将会在该名称前面补充一个重命名,这样就导致方法找不到。

解决方法:
在根目录创建vue.config.js并添加如下特定配置:

module.exports = {
  configureWebpack: {
    output: {
      "filename": "[name].js",
      "library": "[name]",
      "libraryTarget": "umd"
    }
  }
}

其余不用改,还是原来那个引用路径

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐