Aurelia 奥雷莉亚在吃我的书签

Aurelia 奥雷莉亚在吃我的书签,aurelia,Aurelia,我正在开发一个使用Aurelia重写的遗留应用程序,该应用程序在tblHelp中有一堆需要显示的静态html。我在视图中的div上使用innerhtml.bind将存储的静态HTML数据绑定到视图中。每个记录本质上都是一个文档,包含一个完整的目录,链接到文档中的其他div(书签) 比如: <div id="toc"> <h1>Table of Contents</h1> <ul> <li><a href="#

我正在开发一个使用Aurelia重写的遗留应用程序,该应用程序在tblHelp中有一堆需要显示的静态html。我在视图中的div上使用innerhtml.bind将存储的静态HTML数据绑定到视图中。每个记录本质上都是一个文档,包含一个完整的目录,链接到文档中的其他div(书签)

比如:

<div id="toc">
   <h1>Table of Contents</h1>
   <ul>
     <li><a href="#section1">Section 1</a><li>
     <li><a href="#section2">Section 2</a><li>
   </ul>
</div>
<div id="section1">
    <h2>Section 1</h2>
    <p>Paragraph Text...</p>
    <p><a href="#toc">Back to Table of Contents</a></p>
</div>
<div id="section2">
    <h2>Section 2</h2>
    <p>Paragraph Text...</p>
    <p><a href="#toc">Back to Table of Contents</a></p>
</div>

目录
第一节 段落文本

第二节 段落文本


当我在我的Aurelia视图中显示结果页面并单击链接时,而不是移动到当前页面上的正确Div,它似乎试图路由到未知路由并最终返回主页(这是我的未知路由行为)。我如何让Aurelia路由器知道我只是在同一个页面上移动,不需要它路由到另一个页面?

我想你需要更改你的
我想你需要更改你的
你能解决这个问题吗?这是什么?我仍在研究这个问题,发现@LStarky的GistRun(链接如下)提供了大量信息-然而,我认为这个问题可能只在Aurelia使用pushstate导航时才相关,而GistRun在设置该选项时似乎会中断。如果您将骨架导航应用程序更改为使用推送状态,然后添加带有散列url的锚定标记,则它们会表现出相同的行为。我认为这可能是pushstate的一个普遍问题,但在一个简单的html页面上进行了测试,事实并非如此;然而,这对我的问题没有帮助。目前,我禁用了mapUnknownRoutes功能,使它们能够按预期工作。我也想到了这一点,实际上我在Aurelia中搜索了“默认路由”选项,但没有立即找到它。
mapUnknownRoutes
和本地页面锚不可能共存。。。但这是可以做到的,也许应该作为一个bug提交给Aurelia开发团队。这里引用的“正确语法”在HTML5中是不正确的。此外,更改此语法并不能解决Aurelia中的此问题。我希望有人能在这里回复,用一种方法覆盖Aurelia的路由器,这样以#开头的锚标记就不会被解释为路由。这对我们来说将是一个大问题,因为很多Bootstrap的组件都依赖这种机制进行页面间导航(导航标签、scrollspy等)。我相信我已经找到了导致这种情况的原因。标签:在app.html中。我相信这是使用默认哈希导航方案时正确行为所必需的。但在使用pushstate时,它会破坏散列URL。我从我的应用程序模板中删除了这个,并且应用程序按预期运行。