- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Angular 6 的新手。我正在使用 Angular 6 创建一个项目。我在共享数据时遇到了问题。这是项目结构:
1) 头部组件2 登录组件3) 主页组件4) 共享服务
我在当前路由的基础上在我的头部组件中添加类。这是在页面刷新上工作。但是当我从一个组件转移到另一个组件时,这不起作用。
代码如下:
布局组件是:
<app-header></app-header>
<router-outlet></router-outlet>
<app-footer></app-footer>
</div>
标题组件:
ngOnInit() {
console.log(this.dataService.urlExists())
if(this.dataService.urlExists()){
this.url = true
}else{
this.url = false
};
}
<header class="stick-top forsticky" id="header" [ngClass]="{'gradient': url==true}">
</header>
共享服务:
urlExists(){
this.url = this.router.url
if(this.url == "/"){
return false;
}else{
return true;
}
}
请注意:在页面刷新时这是有效的..
最佳答案
这是因为,您的 header 组件在导航时不会重新初始化,因为它位于 router-outlet
之外。您需要监听路由变化并相应地执行所需的操作。
所以在Header组件中,可以订阅路由事件,监听NavigationEnd
事件来检查URL:
import {NavigationEnd, Router} from '@angular/router';
import {filter} from 'rxjs/operators';
...
constructor(private router: Router) {
this.subscribeRouterEvents();
}
subscribeRouterEvents = () => {
this.router.events.pipe(
filter(e => e instanceof NavigationEnd)
).subscribe(() => {
console.log(this.dataService.urlExists())
if(this.dataService.urlExists()){
this.url = true
}else{
this.url = false
};
});
关于javascript - Angular 组件之间的数据共享,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55142767/
我的要求是单帧数据要用两种方法并行处理(需要并行,因为它们是计算量大的)。 根据其中一个线程的结果,另一个需要停止。也就是说,如果方法 1 先返回 TRUE,则应该停止方法 2。如果方法 1 先返回
我是 iOS 新手。我需要创建一个允许注册用户在他们之间共享特定数据的小应用程序,我正在寻找最佳解决方案。我知道我可以创建一个服务器来处理用户身份验证、推送通知和在它们之间共享数据,但也许有更简单更好
我在尝试在 Apple Watch 和 iPhone(均在模拟器上)之间共享数据时遇到问题。 这就是我在 iPhone 应用程序上存储数据的方式: NSUserDefaults* defaul
我想就数据共享的设计实现征求您的意见。 我正在研究 Linux 嵌入式设备(mips 200 Mhz),我希望在多个进程之间进行某种数据共享,这些进程可以一次读取或写入多个参数。 该数据包含约 200
我有三个测试用例,即 Test1.java、Test2.java、Test3.java。在每个测试用例中,我都与一个要读取数据的文件进行交互。这意味着我正在读取每个测试用例的 @BeforeClass
我希望我的 IE 扩展的 BHO 实例能够共享公共(public)数据。我只需要他们共享几个变量,所以我试图找到一个简单的问题解决方案。 我能想到的备选方案,从简单到复杂是: 1) 向/从文件系统或注
经常需要在不同的对象/类之间共享相同的数据。我知道有几种不同的方法可以做到这一点: 全局变量:大多数人出于正确的原因厌恶它。 单例:这对谁可以或不可以提供有限的控制修改数据,至少针对下面讨论的问题。
我正在使用带有 android kitkat 4.4.4 版本的 Moto e。在谷歌上进行一些搜索后,我发现网络共享被禁用以支持移动运营商的数据计划。 I am able to use mobile
我是一名优秀的程序员,十分优秀!