最近由于项目需要,学习了一下Sencha Touch2,深感学习这个新技术的艰辛。没有资料,没有教程,没有可以帮助的人,js调试起来也很困难。所以 在本博客中将我遇到的问题一一写出,供各位参考! ——写在第一篇ST博文。
问题:navigation组件下push进一个list组件,此时list组件有itemtap事件响应,但是当点击导航栏上‘back’按钮返回,然后再进入此list时,itemtap事件竟然消失,无论你将事件写在controller文件里,还是在list视图中加入listeners都不响应。
思考:为什么呢?ST框架问题?不会吧?
1、确保app.js文件中对控制器的引用正确(废话,不正确的话在第一次push时也不会有itemtap事件o(╯□╰)o):
2、再来仔细看看我自己的controller文件,路径在demo/app/controller/TaskListCtrl.js:
完全没有问题呀,经过与官方例子对比发现,在refs中,官方例子里引用的是list的xtype名,不妨试一下,将更改为
再次运行,bingo!!!
完美解决!
后记:至于为什么是这样,我猜是ST框架在识别引用时对ID有区别的,具体是什么,有知道的请告诉我~