微信小程序wxs调用callMethod报渲染层错误Call method on a non-custom-component node is invalid......

控制台打印错误内容如下:

[渲染层错误] Call method on a non-custom-component node is invalid. Call on the owner component or page instead. To avoid this error hint, try not to call method on `event.instance` , but on `ownerInstance` instead.

经测试是能正常调用,但有报错还是无法忍的。

原本是要获取某个组件实例更改其样式,然后顺手直接调用了该组件实例的`callMethod`方法,结果控制台就报错,代码示例如下:


module.exports = {
    touchstart: function(event, instance) {
        var test = instance.selectComponent('.test');
        // ...
        test.callMethod('testCallMethod', {});
    }
}

一直不懂什么原因,细看官方文档注意到文档说明是"当前组件/实例"才明白错在哪里了。

 正确代码示例如下:


module.exports = {
    touchstart: function(event, instance) {
        // ...
        instance.callMethod('testCallMethod', {});
    }
}

猜你喜欢

转载自blog.csdn.net/Honiler/article/details/128142050