0

AngularJSでは、$filterは、ユーザーに表示するデータをフォーマットする方法を提供します。 $interpolateでも、文字列 のライブ更新が可能です。

$interpolate$filterはお互いに関係していますか?これら2つの概念はどう違うのですか?

答えて

1

$ interpolate()は特別なフィルタと考えることができます。

生成されます
var interpolationFunction = $interpolate('{{thing}} is {{color}}.'); 

var grass = {thing: 'Grass', color: 'green'}; 
console.log(interpolationFunction(grass)); 

// Or just. 
console.log(interpolationFunction({thing: 'Milk', color: 'white'})); 
console.log(interpolationFunction({thing: 'The sky', color: 'blue'})); 

Grass is green. 
Milk is white. 
The sky is blue. 

あなたは後で変数のセットをレンダリングするコンパイル済みのテンプレートとして$の補間(STRING)の戻り値と考えることができます。

これに対して、$ filter(NAME)は、名前NAMEのフィルタとして以前に登録された関数を返します。たとえば、 "大文字"フィルタはその引数を大文字に変換し、 "数字"フィルタは数値をフォーマットし、 "日付"フィルタはDateオブジェクトをフォーマットし、引数で任意のことを行う独自の名前付きフィルタを定義できます。

関連する問題