我有一个搜索栏,旨在类似于 facebook 的搜索栏。此时,它可以正常工作,单击结果列表中的“John Smith”后,我的应用程序将显示 John Smith 用户页面。与 Facebook 的界面一样,顶部导航栏 - 搜索栏所在的位置 - 保留。
当显示 John Smith 用户页面时,搜索栏不是空白,而是显示“John Smith”。现在,当我离开这个页面时,我需要清除这个搜索栏。
因此,当用户离开这条特定路线时,我该如何触发一个 Action ?
最佳答案
如果我理解正确你在问什么 - 你不需要触发一个 Action ,Ember.js 已经为你提供了 willTransition
事件。
在 willTransition
中,您可以控制显示搜索栏的 Controller 并处理事务。像这样的东西:
App.IndexRoute = Ember.Route.extend({
actions: {
willTransition: function(transition) {
console.log('Will go away...');
var appController = this.controllerFor('application');
appController.set('dude', '');
}
}
});
工作演示 here
关于javascript - 如何在离开页面时触发 ember.js 操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28372064/