mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-04-23 04:49:15 +08:00
Simplify filterfunction using interface instead of silly type
This commit is contained in:
@@ -220,7 +220,7 @@ mod.filter({
|
||||
name1(foo: any) { return () => {}; },
|
||||
name2: ['foo', (foo: any) => () => {}],
|
||||
});
|
||||
const customStatefulFilter: ng.FilterFunction<(s: string) => number> = (s) => 1;
|
||||
const customStatefulFilter: ng.IFilterFunction = (s) => 1;
|
||||
mod.filter('name', () => customStatefulFilter);
|
||||
mod.filter('name', ['$scope', () => customStatefulFilter]);
|
||||
mod.filter({
|
||||
|
||||
12
types/angular/index.d.ts
vendored
12
types/angular/index.d.ts
vendored
@@ -250,8 +250,8 @@ declare namespace angular {
|
||||
*/
|
||||
factory(name: string, $getFn: Injectable<Function>): IModule;
|
||||
factory(object: {[name: string]: Injectable<Function>}): IModule;
|
||||
filter(name: string, filterFactoryFunction: Injectable<FilterFactory<Function>>): IModule;
|
||||
filter(object: {[name: string]: Injectable<FilterFactory<Function>>}): IModule;
|
||||
filter(name: string, filterFactoryFunction: Injectable<FilterFactory>): IModule;
|
||||
filter(object: {[name: string]: Injectable<FilterFactory>}): IModule;
|
||||
provider(name: string, serviceProviderFactory: IServiceProviderFactory): IModule;
|
||||
provider(name: string, serviceProviderConstructor: IServiceProviderClass): IModule;
|
||||
provider(name: string, inlineAnnotatedConstructor: any[]): IModule;
|
||||
@@ -2238,12 +2238,12 @@ declare namespace angular {
|
||||
(obj: Object): string;
|
||||
}
|
||||
|
||||
type FilterFunction<Filter extends Function> = {
|
||||
interface IFilterFunction extends Function {
|
||||
/**
|
||||
* By default, filters are only run once the input value changes. By marking the filter as `$stateful`, the filter will be run on every `$digest` to update the output. **This is strongly discouraged.**
|
||||
* See https://docs.angularjs.org/guide/filter#stateful-filters
|
||||
*/
|
||||
$stateful?: boolean
|
||||
} & Filter;
|
||||
type FilterFactory<Filter extends Function> = (...I: any[]) => FilterFunction<Filter>;
|
||||
$stateful?: boolean;
|
||||
}
|
||||
type FilterFactory = (...I: any[]) => IFilterFunction;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user