我刚刚开始使用 Sammy 和 Knockout。我在我的视图模型中定义了一个简单的页面/路由数组以及我的路由:
(function($) {
function ViewModel() {
var self = this;
self.chosenRoute = ko.observable();
self.viewData = ko.observable();
self.pages = [
{'title': 'Home', 'route': '#/'},
{'title': 'Job Candidates', 'route': '#/job-candidates'},
...
];
self.goToPage = function(page) {
location.hash = page.route;
};
Sammy(function() {
this.use('Title');
this.setTitle('Vintage Services'); // Doesn't work
this.get('#/', function(context) {
self.chosenRoute('#/');
context.render('/static/templates/home.html', null,
self.viewData);
window.document.title = 'Vintage Services'; // Works
});
this.get('', function() {
this.app.runRoute('get', '#/');
});
}).run();
}
ko.applyBindings(new ViewModel());
})(jQuery);
我在我的模板中包含了 Sammy Title 插件,我没有收到任何错误,但插件不会设置标题。如果我使用window.document.title
,它可以工作。谁能看到我做错了什么?