input 组件中 bindinput 方法和页面中的方法同名时,会导致页面中同名方法触发时机有问题
问题描述:
input 组件中的 bindinput 方法如果和页面中的方法同名的话,则在对 input 的 value 进行赋值时,页面中的同名方法会被触发。具体可查看 demo 代码
预期:
对 input 的 value 赋值时,不会触发 input 组件 bindinput 方法(目前是这样没问题),更不会触发 index/xx 页面中和 input 组件 bindinpunt 方法同名的方法(这里有问题)
目前仅以下指定安卓机可复现,ios 和开发者工具都没问题。
复现机型:
smartisan os v6.1.4,安卓版本 7.1.1
复现流程:
- 点击【赋值搜索按钮】此时 input 输入框内的值为被赋为“搜索”,然后【清空赋值】,此处“搜索”被清空
- 点击输入框内,使得 input 聚焦,然后再次点击【赋值搜索按钮】,会发现输入框内无“搜索”字样,(因为触发了页面中的同名方法)
- 将 index/xx 中的 searchInputChangeHandler (和 input 组件的 bindinput 方法同名)换成任意的其它名称,使其名称和 input 的 bindinput 方法名不一致
- 再重复上述 1,2 操作,就不会再出现 2 所述问题了