Я намагаюся прив'язати властивість кольору з мого класу (придбаного за допомогою прив'язки атрибутів), щоб встановити параметр background-color
my div
.
import {Component, Template} from 'angular2/angular2';
@Component({
selector: 'circle',
bind:{
"color":"color"
}
})
@Template({
url: System.baseURL + "/components/circle/template.html",
})
export class Circle {
constructor(){
}
changeBackground():string{
return "background-color:" + this.color + ";";
}
}
Мій шаблон:
<style>
.circle{
width:50px;
height: 50px;
background-color: lightgreen;
border-radius: 25px;
}
</style>
<div class="circle" [style]="changeBackground()">
<content></content>
</div>
Використання цього компонента:
<circle color="teal"></circle>
Моє прив'язка не працює, але також не створює жодних винятків.
Якщо я ставлю {{changeBackground()}}
десь у шаблоні, це повертає правильний рядок.
То чому прив'язка стилів не працює?
Крім того, як би я спостерігав за змінами властивості color усередині Circle
класу? Для чого потрібна заміна
$scope.$watch("color", function(a,b,){});
в Кутовий 2?
<div class="circle" [style.background]="'color'">