如何访问或更新其他组件类angular2中的组件类变量
How to access or update the component class variable in other component class angular2
我有主体,对于主页,我想为页面的其余部分应用'home'类和'other'类。该主体在index.html中定义。
现在appcomponent为Index.html添加了公共变量'主页= true'。对于其他页面,我想访问这个变量并设置"主页= false"。
我认为你需要摆脱class="home"…
<body [ngClass]="{home: homePage, other: !homePage}">
虽然,我不确定如何在body标签上有angular 2指令。你应该在主体内部有一个标签,这是主要组件(即:你引导angular的那个),这样之外的任何东西都不会被angular 2的强大功能增强。
在你的应用组件中,如果你使用的是Angular RC4,你可以这样做来检查你的URL并设置homePage
变量:
import { Router, NavigationEnd } from '@angular/router';
import { Component, OnInit } from '@angular/core';
@Component({
selector : 'app'
})
export class AppComponent implements OnInit {
public homePage: Boolean = true;
private router: Router;
constructor(router: Router){
this.router = router;
}
ngOnInit() {
this.router.events.subscribe((events) => {
if (events instanceof NavigationEnd) {
if (events.url === '/' || events.url === '/home') {
this.homePage = true;
} else {
this.homePage = false;
}
}
});
this.homePage = (this.router.url === '/' || this.router.url === '/home') ? true : false;
}
}
还必须将body标签更改为:<body [ngClass] = "{'home':homePage, 'other':!homePage}">
相关文章:
- 不能从angular2中的子组件指定父组件中的数组
- 使用javascript协调angular2组件
- Angular2将组件方法导入到另一个组件中
- Angular2组件未从视图中呈现javascript
- 如何在加载Angular2.RC1子组件时更新它
- angular2@组件和类之间的关系
- Angular2路由-将数据从父组件传递到子组件
- Angular2路由错误/缺少组件
- 传递给Angular2组件的字符串始终未定义
- Angular2 - 动态组件加载器错误
- HTML代码表单Angular2组件属性
- 如何更新angular2中组件之间的事件数据
- Angular2子组件正在删除
- Angular2中列表组件的自定义模板(不包含ng内容的transclusion)
- 如何在 Angular2 组件中访问代码镜像文本区域值
- 带有 ngUpgrade 的 Angular2:Angular 无法识别视图中的组件
- Angular2 如何使用 Javascript XMLHttpRequest 重定向到另一个组件
- 更改属性时重新渲染 Angular2 组件
- 您如何处理 Angular2 中嵌套组件的依赖关系
- Angular2 - 删除所有/最近的子组件后无法添加子组件