【问题标题】:Angular: How to let user go directly to lazy loaded URL?Angular:如何让用户直接进入延迟加载的 URL?
【发布时间】:2017-12-21 03:58:37
【问题描述】:

我有一个 Angular-4 应用程序,其中包含多个模块,其中一些是延迟加载的,当用户从“主页”页面启动时一切正常。

在我添加延迟加载之前,用户可以冷/直接加载任何合法的应用程序 URL(例如,localhost:4200/foo),而且效果也很好(又名深度链接).

但是,在将与 /foo 关联的模块更改为延迟加载后,您现在会得到一个空白页面,没有错误,并且在冷加载 localhost:4200/foo 时显示一个 URL 为 localhost:4200(同样,如果用户通过路由器导航到延迟加载的/foo,它可以正常工作。)

那么,有没有什么技巧可以让用户直接启动一个由延迟加载模块处理的 URL?或者,如果您使用延迟加载,您会放弃该功能吗?

【问题讨论】:

  • 可以分享一下相关代码吗?
  • 不,像往常一样,它是一个很大的代码库,因此是简化的问题。我希望有人发布一个指向官方页面的链接说“你不能这样做”,或者一个指向存在证明的链接(即一个例子表明你可以做到这一点)

标签: angular lazy-loading


【解决方案1】:

好吧,我咬紧牙关,根据本教程实现了一个玩具示例:

https://angular-2-training-book.rangle.io/handout/modules/lazy-loading-module.html

而且,可以直接加载localhost:4200/lazy

所以,它本身并没有被禁止,而且在我的真实代码中一定有一些非常复杂的东西是罪魁祸首。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-29
    • 2022-07-28
    • 2019-12-02
    • 1970-01-01
    相关资源
    最近更新 更多