8

Angular.js は、angular.lowercase、angular.isArray などのような一連のグローバル関数を提供します。

スコープに文字列があるとします。

function MyController($scope) {
   $scope.myString = "TEST"
}

angular.lowercase を呼び出しても効果はありません。

{{lowercase(myString)}}
{{angular.lowercase(myString)}}

テンプレートでそのような関数を呼び出すにはどうすればよいですか?

アップデート

angular.isArray の例

<div ng-show="isArray(myVar)">...</div>
4

1 に答える 1

13

{{}} 内の式は実際の JavaScript ではありませんが、そのように見えます。これは angularjsです。このため、すべてが利用できるわけではありません。

charlietfl は、特定のケースが既存のフィルターで解決できることは正しいです。ただし、すべての angular.* 関数がこの方法で公開されるわけではありません。その場合は、独自のカスタム フィルターを作成する必要があります。

フィルターは最もクリーンですが、汚い回避策として、コントローラーに次の行を追加することもできます。

$scope.lowercase = angular.lowercase;  // not angular.lowercase()
于 2013-04-05T23:58:16.517 に答える