<template>
<view class="" :prop="data" :change:prop="example.bindAction">
这是一个测试用例,给Dcloud官方:{{data}}
<button @click="doPlus">点击按钮</button>
</view>
</template>
<script lang="renderjs" module="example">
export default {
data() {
return {
fucker: null
};
},
methods: {
bindAction(newVal, oldVal, ownerInstance, instance) {
console.log('这里数据变更了', newVal);
ownerInstance.callMethod('chatWithRenderjs', 500 - 250);
this.$ownerInstance.callMethod('chatWithRenderjs',500-250);
}
}
};
</script>
<script setup>
import {} from 'vue';
import {} from '@dcloudio/uni-app';
import {} from 'vuex';
let data = $ref(250);
function doPlus() {
data++;
}
function chatWithRenderjs(nomb) {
console.log('这里通信也成功啦', nomb);
}
defineExpose({
chatWithRenderjs
});
</script>
<style scoped>
</style>
- 发布:2023-11-10 15:04
- 更新:2023-11-13 18:19
- 阅读:535
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: Windows 11, version 22H2
HBuilderX类型: 正式
HBuilderX版本号: 3.95
手机系统: Android
手机系统版本号: Android 13
手机厂商: 小米
手机机型: 11ultra
页面类型: vue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
App下载地址或H5⽹址: 无
示例代码:
操作步骤:
初始化时/点击按钮都会触发bindAction方法,从而调用 chatWithRenderjs 方法,控制台打印 对应log日志
初始化时/点击按钮都会触发bindAction方法,从而调用 chatWithRenderjs 方法,控制台打印 对应log日志
预期结果:
调用方法失败 无响应无报错/ 报错
调用方法失败 无响应无报错/ 报错
实际结果:
但是执行到
ownerInstance.callMethod('chatWithRenderjs', 500 - 250);程序无响应无报错,换为this.$ownerInstance.callMethod('chatWithRenderjs',500-250);则会报错 TypeError: Cannot read properties of undefined (reading 'callMethod') at uni-app-view.umd.js:1
但是执行到
ownerInstance.callMethod('chatWithRenderjs', 500 - 250);程序无响应无报错,换为this.$ownerInstance.callMethod('chatWithRenderjs',500-250);则会报错 TypeError: Cannot read properties of undefined (reading 'callMethod') at uni-app-view.umd.js:1
bug描述:
uniapp 安卓端,在使用renderjs 通信过程中 想要调用逻辑层方法,调用失败。我用的是script setup语法糖。 在社区里已经看到很多帖子报这个BUG 跨度近2年 仍然没有解决这个问题,是无法解决还是压根没有重视, 我很想听下官方工作人员的回复,这个例子很简单,复现问题很容易。
4 个回复
8***@qq.com (作者) - helloworld
求解答,希望官方工作人员能够重视这个问题,现在 setup 语法糖应该是非常主流的代码方式了,如果无法正常接洽 renderjs,那开发体验就太差了!!!
8***@qq.com (作者) - helloworld
顶一顶,希望能被看到。
8***@qq.com (作者) - helloworld
BUG 能够百分百复现希望 能够得到官方的重视。
YUANRJ
renderjs 不支持 setup,可改用 Options API。
8***@qq.com (作者)
是否考虑后续 使得renderjs 能够兼容setup 写法呢? 是技术层面不可行嘛? 如果确定了 后续不再升级维护该部分,建议在文档中明确标明不支持setup 语法糖用法。
2023-11-14 13:57
YUANRJ
回复 8***@qq.com: 暂无计划支持,后续会补充到文档。另外更推荐使用 uni-app x,不存在通信问题。
2023-11-14 14:43