Aurelia没有路由器,导航到login.html而不是/#登录



我正在为Identity Server 3编写登录、注销、同意等自定义视图。我想使用Aurelia,但在Identity Server中,我必须传入实际的html文件。那么,我如何导航到localhost:9000/login.html而不是localhost:9000/#login

感谢

如果您想从aurelia应用程序中的URL中删除#:

配置PushState

记住Aurelia"只是JavaScript",所以当你想链接到网站上的另一个页面时,你会像往常一样,给文件一个绝对或相对路径。您将无法链接到捆绑包中的HTML文件,不过,该文件必须像index.html一样进行拆分。

在这一点上,这只是一个关于构建URL的标准JavaScript问题,与Aurelia无关。所以只要把url指向login.html所在的位置就可以了。我希望这足以得到答案,如果不能,我们可以进一步讨论。

在@Ashley Grant的帮助下,我能够为用angular编码的IViewService示例创建一个aurelia替换。Identity Server 3 IView服务示例

老实说,这很容易。只需创建一个标准的aurelia项目,将您的html放在app.html中,并将视图模型放在app.js中。除了在Index.html中有vendor_bundle引用链接外,您还必须为app_bundle创建一个链接,因为有一个错误试图在Identity Server的文件夹结构的根中定位app_bunde。

如果有人对来源感兴趣,我可以把一些东西放在一起,只要IM我。

最新更新