Я включил свои main.js и shell.js ниже для справки. Поскольку вы можете видеть, что мой маршрут по умолчанию в shell.js - это viewmodels/search, и у него есть второй маршрут к viewmodels/application, который может принимать параметр параметра, который является IDKey для конкретного приложения. В большинстве случаев это то, как я хочу, чтобы пользователи вошли в систему, начиная с экрана поиска, где они могут искать конкретное приложение или есть возможность нажать кнопку, чтобы запустить новое приложение. Однако я хотел бы опубликовать URL-ссылки, которые могут пропустить страницу поиска и запустить приложение с помощью страницы viewmodels/application с соответствующим IDKey.Несколько стартовых страниц в Durandal
Я просто не могу понять, как реализовать это поведение. Может ли кто-нибудь заставить меня указать в правильном направлении, как это реализовать.
MAIN.JS
define('jquery', [], function() { return jQuery; });
define('knockout', [], function() { return ko; });
define(['durandal/system', 'durandal/app', 'durandal/viewLocator'], function (system, app, viewLocator) {
app.title = 'My App';
//specify which plugins to install and their configuration
app.configurePlugins({
router: true,
dialog: true,
widget: {
kinds: ['expander']
}
});
app.start().then(function() {
toastr.options.positionClass = 'toast-bottom-right';
toastr.options.backgroundpositionClass = 'toast-bottom-right';
viewLocator.useConvention();
app.setRoot('viewmodels/shell', 'entrance');
});
});
SHELL.JS
define(['plugins/router'], function (router) {
return {
router: router,
activate: function() {
return router.map([
{ route: '', moduleId: 'viewmodels/search', title: 'Permit Application Search', nav: true },
{ route: 'application(/:id)', moduleId: 'viewmodels/application', title: 'Permit Application', nav: true }
]).buildNavigationModel()
.activate();
}
};
});
для чистоты, попробуйте http://yourdomain.com/#/application/12 –