Я новичок в Дюрандале. Мне просто интересно, есть ли способ передать переменные в модель корневого представления, также известную как оболочка, либо через строку запроса, либо любым другим способом?
поэтому main.js выглядит примерно так, как показано ниже.
define(['durandal/app'], function (app) {
app.configurePlugins({
router: true
});
app.start().then(function () {
app.setRoot('shell');
});
});
Можете ли вы сделать что-то похожее на то, что написано ниже в файле shell.js. Я пробовал, но это не работает
function activate(variableIwantToPass) {
doSomething(variableIwantToPass);
configureRoutes(variableIwantToPass);
return router.activate();
}
function configureRoutes(variableIwantToPass) {
var specialRoute = 'bar';
if(variableIwantToPass == 'foo') {
specialRoute = foo;
}
var routes = [
{
route: '',
moduleId: 'home'
},
{
route: 'doThings/:specialRoute/',
moduleId: 'orchestrator'
}
];
router.makeRelative({ moduleId: 'viewModels'}).map(routes);
}
Я не могу позвонить в службу, чтобы получить данные в оболочке, поскольку нужная мне информация/переменная передается на страницу, которая ведет к спа-салону в качестве параметра строки запроса.
Итак, можно ли передать что-то в оболочку, или есть ли другая альтернатива для достижения того, что я хочу. Например, создать файл cookie для хранения этой переменной и прочитать ее через javascript в shell.js?