2017-02-22 102 views
2

我正在開發我的第一個Angular應用程序,並且遇到了數據綁定的一些麻煩。Angular 2:與函數調用的數據綁定

我有包含以下元素的一種成份:

`<span>{{action.getText()}}</span>` 

動作是具有以下的方法動作的類型:

getText(): String { return "Test"; } 

可變動作是否正確定義,因爲我可以訪問屬性通過{{}}無問題。例如{{action.title}}

所以我的問題是,這是甚至有可能訪問此功能,如果是的話,我做錯了什麼?

+1

'action'看起來像什麼?我通常使用'string'數據類型不是'字符串' –

+0

嘗試一個propery getter' get text(){return「Test」; }'和'{{action.text}}'。只有在動作對象來自組件ts文件或者使用#標籤定義的局部變量時才能工作。 –

+0

@MaximeGélinas我現在已經在我的組件中獲得了text(){return「Test」;}'和{{action.text}}'。但現在沒有文字顯示(至少它不再崩潰)。變量動作在關聯的組件文件 – Luca

回答

3

你可以將其轉換爲一個屬性:

get text(): string { return "Test"; } 

您的模板就變成了:

<span>{{ation.text}}</span> 
+0

劃痕。您可以轉換爲屬性,但綁定到函數結果實際上按預期工作。 –

+0

現在,它什麼也沒有顯示在''應該是 – Luca

+0

任何東西在控制檯? –

0

您參考action.title,但ation.getText()。當然是一個錯字?

<span>{{action.getText()}}</span> 
+0

'ation'是一個錯字,我現在糾正了。對'action.title'的引用應該只是表明變量是正確定義的,因爲我可以訪問這個屬性。 – Luca