uni-app vue2调用UTS插件函数问题
uni-app vue2调用UTS插件函数问题
信息类别 | 详细信息 |
---|---|
产品分类 | uniapp/App |
PC开发环境 | Windows |
PC开发环境版本 | win10 |
HBuilderX类型 | 正式 |
HBuilderX版本 | 4.29 |
手机系统 | Android |
手机系统版本 | Android 10 |
手机厂商 | 华为 |
手机机型 | mate |
页面类型 | vue |
vue版本 | vue2 |
打包方式 | 云端 |
项目创建方式 | HBuilderX |
示例代码:
@UTSJS.keepAlive
start(options : AsrOptions) {
this.options = options;
const data = {};
data[SpeechConstant.APP_ID] = options.APP_ID;
data[SpeechConstant.APP_KEY] = options.APP_KEY;
data[SpeechConstant.SECRET] = options.SECRET;
}
操作步骤:
- 插件有代码示例
预期结果:
- 插件有代码示例
实际结果:
- 插件有代码示例
bug描述:
我写了一个百度语音UTS插件, vue3调用这个方法可以成功, vue2调用失败, 提示 “Callable expects 2 arguments, but 1 were provided.” 插件名称: lym-speech
5 回复
HBuilderX 4.41.2024121203-alpha 已修复。
你提到 uts 插件在 vue3 里可以运行,vue2 里不行。你测试了哪些平台?都不行,还是有的可以?有没有规律
方便的话,你私聊发我你到精简之后的源码,或者脱敏后的源码吧,我测试一下。
你如果测试简单的打印 console.log 的 插件是否会遇到这个问题,也测试下。
已收到源码,我测试 vue2/vue3 在安卓中表现不一致,感谢你的反馈。
回复 DCloud_UNI_OttoJi: uts导出的class实例化后,放到了data里边,vue2的响应式逻辑破坏了uts的调用通道逻辑,临时解决方案:在data函数里,把asr: null,这个声明给注释掉就行了,后续会进行修复。