clickイベントを使用してクラスのオン/オフを切り替えようとしていますが、私が実行している問題は、クリックイベントがクラスの間子コンポーネントにあります。私は@Input()デコレータを使用してクラスと子を初期化することが可能ですが、私はクラスあなたが[class.scrollビュー] = "[isClassVisibleから括弧を削除する必要があり、その後Angular2親コンポーネントのclickイベントを使用する子コンポーネントのToggleクラス
import { Component, AfterViewInit, Input, OnInit } from '@angular/core';
import { SidebarComponent } from './components/sidebar/sidebar.component';
@Component({
moduleId: module.id,
selector: 'body',
host: {
'[class.navMdClass]' : 'navMdClass',
'[class]' : 'classNames'
},
templateUrl:'app.component.html' ,
directives:[SidebarComponent],
})
export class AppComponent implements OnInit {
private isClassVisible:boolean;
constructor() {
}
ngOnInit() {
this.isClassVisible=true;
}
toggleClass() {
this.isClassVisible = !this.isClassVisible;
}
}
//Child component
import { Component, Input, EventEmitter, OnInit,SimpleChange } from '@angular/core';
@Component({
moduleId: module.id,
selector: 'sidebar',
templateUrl:'sidebar.component.html'
})
export class SidebarComponent implements OnInit{
@Input() isClassVisible:boolean;
ngOnInit() { }
}
//Parent click event triggers toggleClass
<div class="nav toggle">
<a (click)="toggleClass();" href="#" id="menu_toggle"><i class="fa fa-bars"></i></a>
</div>
//Child div where target class is
<div class="left_col" [class.scroll-view]="[isClassVisible]" >
私がこれを行い、そのように切り替えることができない場合、私はクラスを初期化できません – Kayoti
あなたのアプリで大問題がありますか? –
私がangle2 quickstart repoを使用していて、単純なコードを追加しても、plunkerが私にクラッシュすることはありません – Kayoti