1
我創建了一個具有@bindable
屬性的自定義元素。在元素的構造函數中,使用bound屬性的值設置另一個屬性。這是自定義元素的代碼(文件名custom-element.ts
):Aurelia - 自定義元素屬性綁定分辨率
import {bindable} from 'aurelia-framework';
export class CustomElement{
@bindable value: any = null;
message: any;
constructor(){
this.message = this.generateMessage();
}
generateMessage(){
if (this.value != null){
// logic to generate and return message
} else {
return "Someting went wrong";
}
}
}
這種模式有一個簡單的相關視圖(文件名custom-element.html
):
<template>
The value id is: ${value.id}, and the message is: ${message}
</template>
我在一個視圖中使用這個元素在別處,其模型有權訪問value
對象:
<require from="resources/custom-element"></require>
<custom-element value.bind="value"></custom-element>
雖然${value.id}
顯示正確,則${message}
總是Something went wrong
。
何時設置了value
,如何使用其值設置message
?