我正在尝试编写一个 NopCommerce 插件。我已将我的应用程序相关文件放入插件的根目录中的app
命名目录中。在我的shell.js 中 viewmodel
,我定义路由如下:
define(['durandal/system', 'durandal/plugins/router', 'service/logger','config'],
function(system, router, logger,config) {
var shell = {
activate: activate,
router: router
};
function activate() {
logger.log('MyProducts Started', null, system.getModuleId(shell), true);
router.map([
{ route: '', moduleId: 'viewmodels/myProducts', title: 'My Products', nav: true },
{ route: 'searchProducts', moduleId: 'viewmodels/searchProduct', title: 'Search Products', nav: true },
{ route: 'addProducts', moduleId: 'viewmodels/addProduct', title: 'Add Product', nav: true }
]).buildNavigationModel();
return router.activate();
}
return shell;
}
);
根据约定,它应该转到模块定义的第一条路线:viewmodels/myProducts
但我收到以下错误:
[viewmodels/shell] MyProducts Started system.js:75
[main] No router found Object
Navigation Complete undefined Object
Uncaught TypeError: Cannot read property 'router' of undefined
我正在用井敲我的头。它不会采用默认路由(带有路由:'')。