ion-searchbar的聚焦和失去焦点事件,看最新文档,是没有这两个关联事件的,如下截图所示:
然而,实际情况是,ionBlur和ionFocus确是能用的:
<ion-searchbar (ionBlur)="checkBlur()" (ionFocus)="checkFocus()">
</ion-searchbar>
什么原因?是文档内容不全吗?带着疑问,我们可以看github上的最新源码,发现这里确实只有文档说明的三个事件:
或许有人会说,我记得以前可以的……没错,在3.1.0版本前,文档是有这两个事件说明的,只是后面版本都把它们移除掉了。
3.0.1文档及对应截图:
那就是应该不能用,但怎么实际上能用呢?我们再细心留意下源码,发现:
继承于BaseInput类,那我们再打开BaseInput.ts看看,就会看到下面内容,然后真相大白了:
同样的,其它input相关组件基本也是继承该BaseInput类的,所以同样拥有ionFocus、ionChange、ionBlur事件,只是都不在文档中说明。这就有点尴尬了:不明就里的不知道怎么用……
这种情况,最后就演变成我另一篇文档说的——彩蛋or坑吧……