2017-02-22 6 views
2

私は最初のAngularアプリケーションを開発しており、データバインドにはいくつか問題があります。角2:関数呼び出しによるデータバインド

私は、次の要素が含まれている成分を持つ:

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

アクションは、次のような方法があるタイプのアクションは次のとおりです。

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

私はプロパティにアクセスすることができますので、変数アクションが正しく定義されています{{}}経由で問題なく。例えば{{action.title}}

私の質問は、この機能にアクセスすることも可能であり、はいの場合、私は間違って何をしていますか?

+1

「アクション」はどのように見えますか?私は通常、 'String'ではなく' string'データ型を使用します。 –

+0

正しいgetterで試してください。 'get text(){return" Test "; } 'と' {{action.text}} 'のようになります。アクションオブジェクトがコンポーネントtsファイルまたは#タグで定義されたローカル変数から来た場合にのみ動作します。 –

+0

@MaximeGélinas私のコンポーネントに 'get 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

関連する問題