- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
Angular Routing 文档提到了组件实例创建、组件实例激活和路由激活。
文档没有解释这些概念的区别,以及每次创建/激活发生的时间。
总结:不清楚组件实例激活和路由激活的真正含义,以及它们与组件实例的关系创作(尤其是时间安排)。
实例创建
实例激活
路由激活
以下是 Angular 文档中对上述三个概念的一些提及:
实例创建
By default, the router re-uses a component instance when itre-navigates to the same component type without visiting a differentcomponent first.
...
This application won't re-use the HeroDetailComponent. The user alwaysreturns to the hero list to select another hero to view. There's noway to navigate from one hero detail to another hero detail withoutvisiting the list component in between. Therefore, the router createsa new HeroDetailComponent instance every time.
实例激活
When the browser's location URL changes to match the path segment/crisis-center, then the router activates an instance of theCrisisListComponent and displays its view.
When the application requests navigation to the path /crisis-center,the router activates an instance of CrisisListComponent, displays itsview, and updates the browser's address location and history with theURL for that path.
路由激活
The data property in the third route is a place to store arbitrarydata associated with this specific route. The data property isaccessible within each activated route.
You can also protect child routes with the CanActivateChild guard. TheCanActivateChild guard is similar to the CanActivate guard. The keydifference is that it runs before any child route is activated.
In the Hero Detail and Crisis Detail, the app waited until the routewas activated to fetch the respective hero or crisis.
The ActivatedRouteSnapshot contains the future route that will beactivated and the RouterStateSnapshot contains the future RouterStateof the application, should you pass through the guard check.
最佳答案
What is the difference between instance creation and instance activation?
实例化意味着创建路由(ActivateRoute)或组件的实例。激活路由意味着将其附加到 router-outlet 指令。激活组件意味着将其附加到 DOM。使用 activateWith 激活路由和组件router-outlet 指令的功能。
让我们看一些例子。假设您有以下路线:
{
path: 'a',
component: AComponent,
children: [
{ path: 'b', component: BComponent },
{ path: ':name', component: DComponent }
]
}
现在您导航到 a/b
。
路由器将:
{ path: 'a', component: AComponent, children: [] }
route{ path: 'b', component: BComponent }
路由router-outlet
位置来激活这些路由AComponent
和BComponent
AComponent
和 BComponent
添加到 DOM 来激活它们现在您导航到 a/n1
。
路由器将:
a
重用路由 - { path: 'a', component: AComponent, children: []
路由(无实例化或激活){ path: ':name', component: DComponent }
路由{ path: ':name', component: DComponent }
路由AComponent
实例(没有实例化或激活)DComponent
实例DComponent
附加到 AComponent
View 中的 router-outlet
来激活它现在您导航到 a/n2
。
路由器将:
a
重用路由 - { path: 'a', component: AComponent, children: []
路由(无实例化或激活)n2
重用路由 - { path: ':name', component: DComponent }
路由(没有实例化或激活)n2
激活路由的参数DComponent
实例(没有实例化或激活)关于javascript - Angular 路由 : Instance Creation vs Instance Activation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48155804/
我知道我的问题有点含糊,但我不知道如何描述它。我问过很多地方,但似乎没有人理解我为什么要这样做。但请耐心等待,我会解释为什么我想要这样的东西。 我使用 Liquid Templates 允许用户在我的
这个问题在这里已经有了答案: what is the difference between null != object and object!=null [duplicate] (2 个回答) 7年
当我在我的本地主机 Google App Engine 应用程序中将日志记录级别更改为 FINE 时,我开始在我的跟踪堆栈中看到这些: Apr 17, 2013 4:54:20 PM com.goog
Python 有内置函数 type : class type(object) With one argument, return the type of an object. The return v
我正在使用深度学习进行语义分割,我遇到了以下术语:语义分割、实例检测、对象检测 和对象分割. 它们有什么区别? 最佳答案 这些术语的某些用法对用户而言是主观的或依赖于上下文,但据我所知对这些术语的合理
我面临 -[NSConcreteMutableData release] 的问题:消息发送到已释放的实例,我也附上了我的示例代码。 - (IBAction)uploadImage { NSString
我试图显示模型中的单个实例(数据库行),其中多个实例共享多行的相同字段(列)值。为了澄清这一说法,我有以下情况: ID/Title/Slug/Modified 1 Car A 1s ag
我正在尝试使用mockito来模拟服务。然而,我没有找到一种方法来告诉mockito,给定一个类的实例返回给我相同的实例: 类似于: given(service.add(any(Individua
我知道如何从父类(super class)原型(prototype)创建子类原型(prototype)。但是,如果我已经有了父类(super class)对象的实例来创建子类对象怎么办? 在 JS 中
鉴于 Kotlin 1.1。对于某个类的 instance,instance::class.java 和 instance.javaClass 似乎几乎是等价的: val i = 0 println(
这个问题在这里已经有了答案: 8年前关闭。 Possible Duplicate: Find out the instance id from within an ec2 machine 我正在寻找从
为什么我的 Instantiate 函数没有创建 That 的“空白”实例? 我有以下最小类: classdef That < handle properties This = '' end
Session session = HibernateUtil.getSessionFactory().openSession(); Transaction tx = session.beginTra
考虑以下几点: public class A { public String name = "i am a A instance"; } public class B extends A {
我正在使用 Scalr 来扩展网站服务器。 在 Apache 服务器上,我安装了 Sakai,并为 Linux 机器创建了一个启动脚本。 问题是,如何确保MySQL实例在Apache服务器启动之前启动
Android Realm DB 允许使用 Realm.getInstance() 获取多个实例。这些中的最佳实践是什么? :1.创建单个实例(应用程序范围)并在任何地方使用它2. 在需要时获取一个新
我很难理解为什么修改实例 a 中的属性会修改实例 b 中的相同属性。 var A = function (){ }; A.prototype.data = { value : 0 }; var
我将 Weka 用作更长管道的一部分,因此,我无法承受将所有数据写入文件或数据库只是为了创建一个 Instances。目的。我可以即时做的是创建 Instance 的列表对象。 来自 this pag
class C: def func(self, a): print(a) c = C() print(c.__dict__) # {} c.func = c.func # c.func i
Angular Routing 文档提到了组件实例创建、组件实例激活和路由激活。 文档没有解释这些概念的区别,以及每次创建/激活发生的时间。 问题 实例创建和实例激活有什么区别? 实例激活和路由激活有
我是一名优秀的程序员,十分优秀!