1
在我的主視圖中,我注入了一個組件,在初始加載時顯示了正確的整數,但如果稍後在我的主視圖中更新該值,附加到該函數的控制檯日誌消息將顯示正確的整數,但實際的html值不會更新。這裏發生了什麼?組件模板表達式不更新
main.js:
@Component({
selector: 'step-one',
directives: [priceBox],
templateUrl: 'step-one/step-one.html'
})
export class stepOne {
constructor(@Inject(Router) router, @Inject(Http) http, @Inject(RouteParams) params, @Inject(priceBox) pbox) {
let cid = parseInt(params.get('country'));
pbox.price = 200;
...
價格box.js
import {Component} from 'angular2/core';
@Component({
selector: 'price-box',
template: `
<div>
<h1>PRICEBOX</h1>
<p>{{totalPrice}}</p>
</div>
`
})
export class priceBox {
constructor() {
this.totalPrice = '130';
}
set price(val){
this.totalPrice = val;
console.log('SET price box: price = ' + this.totalPrice);
}
}
所以只是重申: 在頁面加載我的價格框元素顯示的價格爲130 .. 。當我嘗試通過pbox.price = 200
設置一個新值時,值停留在130,但我得到控制檯日誌消息說SET price box: price = 200
謝謝!