小编Har*_*wat的帖子

Angular 4:ngDoCheck 与 ngAfterViewChecked 之间的区别

在 Angular 2+ 中,ngDoCheckngAfterViewChecked似乎执行相同的功能。 ngDoCheck据说只要触发更改检测就会调用。现在,此更改检测将随着视图中的更改而触发。根据文档,ngAfterViewChecked每当视图更改时都会调用。

当一个生命周期钩子就足够了时,这里还需要两个生命周期钩子吗?

lifecycle-hook angular

5
推荐指数
1
解决办法
8900
查看次数

Angular:在延迟加载模块重新加载时重置服务状态

我的应用程序中关于服务的结构如下-

AppModule (AppComponent and HomeComponent)
|       |      |
Lazy1 Lazy2  Lazy3
Run Code Online (Sandbox Code Playgroud)

我的应用程序从 AppComponent 开始,它重定向到 HomeComponent,然后重定向到子模块之一。

所有子模块都是延迟加载的。现在我从 AppComponent 开始,从那里我被重定向到子模块之一。现在根据某些条件,我导航回 HomeComponent,然后再次重定向到子模块之一。

我的问题是,如果我再次使用不同的数据重新加载任何子模块,那么该子模块服务将具有相同的旧数据。本质上,由于儿童注射,这些服务并没有像它们应该的那样重新创建。

需要帮助来确定这里的问题。

附加信息 -

我在 AppModule 中有一些 App 级别的常用服务。然后每个子模块都有许多该模块使用的服务。应用级服务被注入到子模块服务中。

angular-services angular-ui-router angular-module angular

5
推荐指数
0
解决办法
607
查看次数

为什么我不能推送到非裸存储库的签出分支?

我对我创建的场景很困惑.我在Github上创建了一个存储库(让我们称之为A)并将代码推送到它.之后,我将该存储库克隆到我的本地(让我们称之为B),这样我本地的来源就是远程回购A.

现在我从我的本地B克隆来创建另一个本地实例C.现在我有远程起源的C作为repo B而C的上游是A.

A ? B ? C
Run Code Online (Sandbox Code Playgroud)

这类似于分叉,但在这里我在客户端而不是服务器端创建了克隆.

现在,如果我尝试使用从C到其原点B的推送:

git push origin 
Run Code Online (Sandbox Code Playgroud)

然后我收到一个错误,指出我无法推送到非裸存储库.我知道推送到非裸存储库可能会导致本地远程不存在的提交丢失.

但是,这种情况与我将代码从B推送到A的情况类似吗?

我很困惑,如果B到A是可能的,那么为什么C到B.

为了合并到A,我们可以推送到上游:

git push upstream
Run Code Online (Sandbox Code Playgroud)

git dvcs github git-bare git-non-bare-repository

4
推荐指数
1
解决办法
2799
查看次数