control focus related research
Sent: Wednesday, 11 May, 2016 11:49 AM
在PC上,點了live search的search field后,
也經歷了key down->key press->send http request to backend->key up
我比較感興趣的是這個Store focus information,里面直接指向我們S2的HeaderFooterHelper,正好是出問題的search field所在。
solution
是aggregationBinding的位置不對,不應該在onInit中而應該放在routeMatched中做該操作。
重新梳理下這個問題:
這個失去焦點的問題出現根本原因是search input被觸發了blur事件,從而失去了焦點,而blur事件的觸發禍首是defineMasterHeaderFooter方法被框架call到了,下圖很清楚的說明了這個問題。
接下來借助截圖說明為什么Leads中defineMasterHeaderFooter會被框架調用到,而Contacts沒有呢?
在MasterHeaderFooter被創建(app init)出來的時候,框架會判斷在那個時間節點master list是否存在綁定了,如果有的話,會在binding對象上掛一個監聽change事件的event handler,也就是這個event handler觸發了defineMasterHeadrFooter方法被又一次調用。
解決方案就是照著BP的改,把bindAggregation的動作放到routeMatched里面去
總結
以上是生活随笔為你收集整理的control focus related research的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: STL容器之数据结构图解
- 下一篇: 荣耀20自带钢化膜吗(荣耀官网荣耀手机)