我在这个项目中使用了几个库。抱怨的是jQuery。我不确定jQuery实际上是这里的罪魁祸首。我已经尝试了几种不同的方法来获得理想的结果,并且我最终得到的解决方案导致错误最少并且仍能正常运行。好的,所以我使用jQuery,Materialize,Angular,Angular UI-Router和Angular Materialize。我定义了几个路由,也有嵌套视图。所以,代码:
<ul tabs>
<li class="tab"><a href="#/one" ui-sref="one" ui-sref-active="active">One</a></li>
<li class="tab"><a href="#/two" ui-sref="two" ui-sref-active="active">Two</a></li>
<li class="tab"><a href="#/three" ui-sref="three" ui-sref-active="active">Three</a></li>
</ul>
因此,通过将href="#/one"
与ui-sref="one"
组合在锚元素上,此方法可以正常运行,但仍会在初始应用程序加载时产生错误。 Uncaught Error: Syntax error, unrecognized expression: #/one
。
几乎所有此错误的搜索结果都与字符串和引号的格式有关。这让我相信它与其中一个库有关。最有可能是Materialise或UI-Router。也许两者在一起。
这是一个重现问题的小提琴 - https://jsfiddle.net/whatisthebigpicture/9uudedvx/ - 脚本是用HTML加载的,因为外部脚本面板无法正常工作。在JSFiddle上重现同样的问题是一个挑战,但我确信如果它可以在Fiddle中解决,那么我可以将它应用到我的应用程序。
有没有人有使用这些库的经验?我能做些什么来摆脱错误,还是由图书馆开发人员来做?
答案 0 :(得分:1)
使用data-href="#/one"
代替普通的href="#/one"
。工作小提琴 - https://jsfiddle.net/whatisthebigpicture/rj08fosn/