我出现这个问题是在自定义组件里的textarea里面通过model:value双向绑定一个page({})里data对象中的一个变量,然后在textarea里面进行任何操作都爆了这个提示。估计是这里的双向绑定是通过监听input事件来完成而page里面没有这个事件处理函数,所以我给textarea加个bindinput事件同时在page里面定义,就解决这个问题了
Do not have xxx handler in component如代码片段,项目中有启动页 index,自定义组件 Component ,其它 other 三个组成部分 index.js 通过 const other = require('../other/other.js'); 然后在 onLoad 中 other.call(this) 来实现了 other.js 中的 otherTap 和 changeOtherTextarea 方法 一旦 index.json 引入了 usingComponents 自定义组件后项目报警告 Do not have changeOtherTextarea handler in component,Textarea 组件的 bindinput 方法 changeOtherTextarea 找不到,但 View 组件的 otherTap 正常 尝试修改 在 Component 的 methods 中加上 changeOtherTextarea 不能解决 在 Component 中直接加上 changeOtherTextarea 也无法解决 在 index.js 中实现下 changeOtherTextarea 方法并传递参数即可解决 在 index.js 中空实现 changeOtherTextarea 也能解决 请问用上自定义组件 Component后是对 call 兼容不好吗?感觉大部分事件都能继承进去,唯独 Textarea 组件的 bindinput 方法不实现 代码片段都贴出来了,官方不打算回复下么
2021-04-24