bed*_*edo 13 javascript query-string aurelia aurelia-navigation aurelia-router
使用aurelia.io框架路由器时,读取和设置查询字符串的首选方法是什么?
例如,在网址中: http://www.myapp.com/#/myroute1/?s=mystate
我如何阅读和设置?s=mystate网址的一部分并让aurelia路由器正确导航并记住该状态,这样每当我到达我的route1viewmodel时,我都可以读取该状态变量并对其执行某些操作?
us3*_*s3r 20
在viewmodel上,您可以实现方法activate(params,routeConfig),对象参数应该包含您的查询变量
activate(params, routeConfig){
console.log(params.s); //should print mystate
}
Run Code Online (Sandbox Code Playgroud)
要导航到某个路线,您必须在app.js中指定此路线的名称(名称:'redirect')
config.map([
{ route: ['','welcome'], moduleId: './welcome', nav: true, title:'Welcome' },
{ route: 'flickr', moduleId: './flickr', nav: true, title:'Flickr' },
{ route: 'redirect', moduleId: './redirect', name: 'redirect'},
{ route: 'child-router', moduleId: './child-router', nav: true, title:'Child Router' }
]);
Run Code Online (Sandbox Code Playgroud)
然后使用方法NavigateToRoute和参数.
router.navigateToRoute('redirect', { s:'mystate'}, {replace: true});
Run Code Online (Sandbox Code Playgroud)