0
次のコードが与えられます。角度フィルタ:TypeScriptのコンストラクタによって返された関数の呼び出し
class ToLowerFilter
{
constructor()
{
return (value: string) => value.toLowerCase();
}
}
myAngularApp.filter("toLower", ToLowerFilter);
私は別のコンテキストでこれを使用したい場合は、通常、あなたが$filter
参照を注入でき、ような何か:活字体のコンパイラはと言って、この文句を言うしかし
var filteredValue = $filter('toLower')(myValueToBeLowered);
を$filter(...)
は呼び出し可能な型を返しません。
ToLowerFilter
クラスを直接使用する場合は、どのようにタイプスクリプトを使用しますか?これらの方法はいずれも動作しません:(活字体がtranspileエラーが発生いずれか、またはそれが正しいJavaScriptのシンタックスではありません)
// define $filter: ng.IFilterService
var filteredValue = $filter('toLower')(value);
var filter = new ToLowerFilter();
var filteredValue = filter(value);
var filteredValue = new ToLowerFilter(value);
var filteredValue = new ToLowerFilter()(value);
ToLowerFilterに関数を返す関数を作ってみませんか? –