【发布时间】:2015-12-11 23:44:20
【问题描述】:
我想有条件地显示一个登录页面,但遇到了问题。我用官方aurelia skeleton application 复制了它,将app.html 更改为以下内容:
<template>
<require from="nav-bar.html"></require>
<require from="bootstrap/css/bootstrap.css"></require>
<nav-bar router.bind="router"></nav-bar>
<template if.bind="false">
<div class="page-host">
<router-view></router-view>
</div>
</template>
<h1 if.bind="true">Not logged in, show login page</h1>
</template>
问题是路由器对象不再被定义,因此导航栏不起作用(没有显示导航项)。有人知道我在这里做错了什么吗?
【问题讨论】:
-
很难知道那里发生了什么。您应该提供有关您的应用正在做什么的更多信息。查看aurelia.io/docs.html#/aurelia/framework/1.0.0-beta.1.0.3/doc/… 的 Aurelia Docs 并搜索“自定义导航管道”。相信对你有帮助
-
你是对的。我现在澄清说我正在使用官方的 aurelia 骨架应用程序,上面是我为重现该问题所做的更改。我不想使用导航管道,因为我的想法是在没有重定向的情况下处理登录(这本身可能有缺陷(?)但应该可以工作)。
-
它在这里尝试了你的代码,它工作正常......也许还有另一件事正在破坏你的应用程序。提供完整的 app.js 代码,包括当前路由的 .js
-
我使用了上面链接的官方骨架,所以代码和那个没有什么不同。你可以再试一次,因为我更新了代码,我看到的问题是没有显示导航项。
-
@SimonBengtsson 使用
setRoot
标签: javascript web-component aurelia