如果要更改所有路线的标题,可以重新打开Ember.Route
课程:
Ember.Route.reopen({
activate: function() {
this._super.apply(this, arguments);
var title = this.get('title') || '';
document.title = title;
}
});
因此,在您的路线中定义一个标题属性,将document.title
在转换到该路线时进行更改。
例如:
App.IndexRoute = Ember.Route.extend({
title: 'index' // changes the title to index
});
App.FooRoute = Ember.Route.extend({
title: 'foo' // changes the title to foo
});
App.BarRoute = Ember.Route.extend({
title: 'bar' // changes the title to bar
});
App.NotitleRoute = Ember.Route.extend({}); // don't change the title
观察:这个实现没有绑定意识
请看一下。源代码http://jsbin.com/ucanam/1918/edit。嵌入式演示http://jsbin.com/ucanam/1918