Tôi đang cố gắng liên kết một thuộc tính màu từ lớp của mình (có được bằng liên kết thuộc tính) để đặt thuộc tính background-color
của tôi 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 + ";";
}
}
Mẫu của tôi:
<style>
.circle{
width:50px;
height: 50px;
background-color: lightgreen;
border-radius: 25px;
}
</style>
<div class="circle" [style]="changeBackground()">
<content></content>
</div>
Việc sử dụng thành phần này:
<circle color="teal"></circle>
Ràng buộc của tôi không hoạt động, nhưng cũng không ném ra bất kỳ ngoại lệ nào.
Nếu tôi đặt {{changeBackground()}}
ở đâu đó trong mẫu, điều đó sẽ trả về chuỗi chính xác.
Vậy tại sao kiểu ràng buộc không hoạt động?
Ngoài ra, tôi sẽ xem những thay đổi đối với thuộc tính màu bên trong Circle
lớp như thế nào? Thay thế cho cái gì
$scope.$watch("color", function(a,b,){});
trong Angular 2?
<div class="circle" [style.background]="'color'">