Aurelia.io:如何导航到路线

时间:2016-07-21 10:14:32

标签: javascript aurelia

我有一个带有配置路线的router.js文件:

routes.js

 export class App {
        configureRouter(config, router) {
        config.title = 'Aurelia';
        config.map([
      {route: ['', `welcome`], name: 'welcome', moduleId: './welcome', nav: true, title:'Welcome'},
      {route: 'http', name: 'http', moduleId: './http', nav: true, title:'HTTPTest'},
      {route: 'users', name: 'users', moduleId: './users', nav: true, title:'Github Users'},
      {route: 'plan', name: 'plan', moduleId:'./dp/plan', nav: true, title:'DPTest'},
      {route: 'user_table', name: 'user_table', moduleId:'./dp/user_table', nav: true, title:'Benutzer'}
    ]);

    this.router = router;
  }
}

我想从plan中的函数调用其中一条路线(users.js)。我是否必须在users.js中导入{Router}?还是注入?

1 个答案:

答案 0 :(得分:12)

以下任何一种都可以使用

使用router.navigateToRoute()

import { Router } from 'aurelia-router';

@inject(Router)
export class UsersViewModel {
  constructor(router) {
    this.router = router;
  }
  doStuff() {
    this.router.navigateToRoute('plan');
  }
}

使用本地位置

export class UsersViewModel {
  doStuff() {
    location.assign('#/users');
  }
}