Aurelia 1.0路由configureRouter从未调用过

时间:2016-09-02 14:01:32

标签: javascript ecmascript-6 aurelia aurelia-router

我尝试按照这个http://www.tutorialspoint.com/aurelia/index.htm

的方式关注aurelia.io路由的一些教程

我在App类中实现了一个configureRouter方法,但从未调用过

app.js

export class App {


        constructor()
        {
          console.log("app");
        }

        configureRouter(config, router){


          console.log("configureRouter");

          config.title = 'Aurelia';

          config.map([
              { route: ['','home'],  name: 'home',  
                moduleId: './components/home/home',  nav: true, title:'Home' },
              { route: 'about',  name: 'about',
                moduleId: './components/about/about',    nav: true, title:'About' }
          ]);

          this.router = router;
        }
    }

app.html

    <template>

      <nav>
          <ul>
            <li repeat.for = "row of router.navigation">
                <a href.bind = "row.href">${row.title}</a>
            </li>
          </ul>
      </nav>

    <router-view></router-view>
    </template>

据我所知,app.js中的configureRouter方法应该在模板中检测到路由器视图时自动调用,但事实并非如此(我在chrome控制台中没有出现任何错误)< / p>

有什么想法吗?

2 个答案:

答案 0 :(得分:8)

我遇到了类似的问题但事实证明,如果模板中没有<router-view></router-view>,则永远不会调用configureRouter方法。即使您找到了解决方案,但也许其他人也可以在此解决方案中找到解决方案

来源:https://www.niclassahlin.com/2016/03/13/aurelia-router-configuration-caveat/

答案 1 :(得分:4)

没有阅读本教程,但它似乎可以在我的机器上运行,是不是在index.html中没有正确设置?

请在此处查看代码的工作示例(使用chrome):https://gist.run/?id=49f3aa8ac6cb72f2efc22c3073bc42d8

这还不适用于您的机器吗?

顺便说一下。结帐Aurelia骷髅,它们是一个简单的起点https://github.com/aurelia/skeleton-navigation