我的Durandal应用程序中有一个messageBox,无论你是否点击否,你都被发送到另一页。我想用路由器做这个,但页面没有切换。
我可以看到代码正在执行该行,但没有任何反应!
define(function(require) {
var app = require('durandal/app'),
system = require('durandal/system'),
router = require('durandal/plugins/router');
return {
router: router,
displayName: 'SometingApp Startpage',
activate: function() {
system.log("Application started!");
},
createEstimate: function() {
app.showMessage('Do you want to create a new something?', 'New something', ['Yes', 'No']).then(function(result) {
if (result == "Yes") {
return router.activate('otherpage');
}
});
}
};
});
用户单击与createEstimate绑定的按钮!
希望有人可以提供帮助!
答案 0 :(得分:3)
我认为你需要做的就是调用router.navigateTo('#/ yourUrl')。
如果我理解文档,那么router.activate必须只调用一次,通常是在shell激活时。
文档
中列出了viewModel导航可用的路径功能 “其他API”部分下的