W3cubDocs

/Angular 7

IterableDiffers

class

A repository of different iterable diffing strategies used by NgFor, NgClass, and others.

class IterableDiffers {
  static ngInjectableDef: defineInjectable({...})
  static create(factories: IterableDifferFactory[], parent?: IterableDiffers): IterableDiffers
  static extend(factories: IterableDifferFactory[]): StaticProvider
  constructor(factories: IterableDifferFactory[])
  factories: IterableDifferFactory[]
  find(iterable: any): IterableDifferFactory
}

Static properties

Property Description
static ngInjectableDef: defineInjectable({ providedIn: 'root', factory: () => new IterableDiffers([new DefaultIterableDifferFactory()]) })

Static methods

static create(factories: IterableDifferFactory[], parent?: IterableDiffers): IterableDiffers

Parameters
factories IterableDifferFactory[]
parent IterableDiffers

Optional. Default is undefined.

Returns

IterableDiffers

Takes an array of IterableDifferFactory and returns a provider used to extend the inherited IterableDiffers instance with the provided factories and return a new IterableDiffers instance.

static extend(factories: IterableDifferFactory[]): StaticProvider

Parameters
factories IterableDifferFactory[]
Returns

StaticProvider

Usage Notes

Example

The following example shows how to extend an existing list of factories, which will only be applied to the injector for this component and its children. This step is all that's required to make a new IterableDiffer available.

@Component({
  viewProviders: [
    IterableDiffers.extend([new ImmutableListDiffer()])
  ]
})

Constructor

constructor(factories: IterableDifferFactory[])

Parameters
factories IterableDifferFactory[]

Properties

Property Description
factories: IterableDifferFactory[]

Methods

find(iterable: any): IterableDifferFactory

Parameters
iterable any
Returns

IterableDifferFactory

© 2010–2019 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://v7.angular.io/api/core/IterableDiffers