У меня есть простой компонент, который должен управлять классами отображения на моих datatables. Единственный способ, с помощью которого я могу заставить его работать, - это иметь загрузочную нагрузку внутри реального компонента. Кнопки не работают с данными в других компонентах. Я импортирую класс и помещаю в директиву, но он по-прежнему не работает вне его собственной вложенной области.Угловой 2 (щелчок) = не работает на селекторах вне его компонента
import {Component} from 'angular2/core';
import {NgClass} from 'angular2/common';
import {DataTable} from '../../components/datatable/datatable';
import {TestDatatable} from "../../views/grids/testDatatable";
@Component({
selector: 'show-parent',
inputs: ['isDisabled'],
directives: [NgClass, TestDatatable],
template: `
<i class="fa fa-sitemap" (click)="toggleOpen($event)"></i>
<i class="fa fa-th-large" (click)="toggleSplitScreen($event)"></i>
//The buttons work on this datatable below but if I move
// this selector somewhere else it no longer works
<myDatatable [ngClass]="{'panel-open': isOpen, 'panel-split':
isSplit}" class="parent-grid"></myDatable>
`
})
export class ShowParent {
isOpen = false;
isSplit = false;
toggleOpen(event) {
event.preventDefault();
this.isOpen = !this.isOpen;
}
toggleSplitScreen(event) {
event.preventDefault();
this.isSplit = !this.isSplit;
}
}
Большое спасибо! Очень полезно! – ndesign11
@ ndesign11 Я счастлив, что поможет вам, с другой стороны, этот ответ/вопрос новый, я думаю, вы можете прояснить некоторые вещи -> http://stackoverflow.com/questions/36060825/angular2-inject-a-non- инъекционный-класс/36061014 # 36061014 –