关于*deferredContent
和@deferred
之间的AngularDart中的lazy loading有疑问。
[AppLayout组件,我们使用了*deferredContent
。
Github我们有@deferred
实现的论述。
它们有什么区别?
我没有找到关于此的详细文档。
这是两个截然不同的概念,它们的名称相似。
* deferredContent不适用于延迟加载。它用于不更改检测隐藏的内容。
Angular工作的方式是,将内容传递给诸如app-bar的某些组件的内容位于父项中,而不是app-bar的子项中。因此,应用程序栏本身无法控制何时对该内容进行更改检测。为了解决这个问题,我们使用* deferredContent允许在抽屉关闭时从窗口小部件树中删除内容,因此看不到。
在许多情况下,它等效于* ngIf =“ visible”。
我认为@deffered和* deferredContent可以同时使用,但是我不建议延迟加载到该级别,因为我希望在应用程序加载后很快需要应用程序栏内容。] >
此处有更多信息:https://github.com/dart-lang/angular_components/blob/37b2b4b940d91747678bd18e29c55c8a876498ee/angular_components/lib/content/deferred_content.dart#L18请注意,它没有说明延迟加载,只是创建。