<template>
<view @longpress="operationjs.longpress">
</view>
</template>
<script module="operationjs" lang="renderjs">
export default {
mounted() {},
methods: {
longpress(event, ownerInstance) {
console.log("touchend");
ownerInstance.callMethod('getData', 12)
},
}
}
</script>
<script setup>
const getData = (option) => {
console.log(option)
}
</script>

- 发布:2022-12-05 11:01
- 更新:2022-12-06 09:36
- 阅读:300
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win11
HBuilderX类型: 正式
HBuilderX版本号: 3.6.5
手机系统: Android
手机系统版本号: Android 12
手机厂商: 小米
手机机型: k40
页面类型: vue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
手机上长按操作在renderjs中有打印,回调getData函数没有打印。网页上长按操作在renderjs中有打印,回调getData函数也有打印。
手机上长按操作在renderjs中有打印,回调getData函数没有打印。网页上长按操作在renderjs中有打印,回调getData函数也有打印。
预期结果:
预期回调中有打印。
预期回调中有打印。
实际结果:
实际回调中没有打印。
实际回调中没有打印。
bug描述:
手机上长按操作在renderjs中有打印,回调getData函数没有打印。网页上长按操作在renderjs中有打印,回调getData函数也有打印。
2 个回复
DCloud_UNI_GSQ
代码中的 getData 写法,默认是不会暴露在当前组件实例上的。
所以在实例上调用方法 getData 不会成功。
改成选项式API写法,或者使用 defineExpose 将 getData 暴露在实例上。
6***@qq.com (作者)
网页端是可以的,手机上仍然拿不到参数。