當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript store.ScannedActionsSubject類代碼示例

本文整理匯總了TypeScript中@ngrx/store.ScannedActionsSubject的典型用法代碼示例。如果您正苦於以下問題:TypeScript ScannedActionsSubject類的具體用法?TypeScript ScannedActionsSubject怎麽用?TypeScript ScannedActionsSubject使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了ScannedActionsSubject類的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: describe

describe('Actions', function() {
  let actions$: Actions;
  let dispatcher: ScannedActionsSubject;

  const ADD = 'ADD';
  const SUBTRACT = 'SUBTRACT';

  function reducer(state: number = 0, action: Action) {
    switch (action.type) {
      case ADD:
        return state + 1;
      case SUBTRACT:
        return state - 1;
      default:
        return state;
    }
  }

  beforeEach(function() {
    const injector = ReflectiveInjector.resolveAndCreate([
      StoreModule.forRoot(reducer).providers || [],
      Actions,
    ]);

    actions$ = injector.get(Actions);
    dispatcher = injector.get(ScannedActionsSubject);
  });

  it('should be an observable of actions', function() {
    const actions = [
      { type: ADD },
      { type: SUBTRACT },
      { type: SUBTRACT },
      { type: SUBTRACT },
    ];

    let iterations = [...actions];

    actions$.subscribe({
      next(value) {
        let change = iterations.shift();
        expect(value.type).toEqual(change!.type);
      },
    });

    actions.forEach(action => dispatcher.next(action));
  });

  it('should let you filter out actions', function() {
    const actions = [ADD, ADD, SUBTRACT, ADD, SUBTRACT];
    const expected = actions.filter(type => type === ADD);

    actions$
      .pipe(ofType(ADD), map(update => update.type), toArray())
      .subscribe({
        next(actual) {
          expect(actual).toEqual(expected);
        },
      });

    actions.forEach(action => dispatcher.next({ type: action }));
    dispatcher.complete();
  });

  it('should support using the ofType instance operator', () => {
    const action = { type: ADD };

    const response = cold('-b', { b: true });
    const expected = cold('--c', { c: true });

    const effect$ = new Actions(hot('-a', { a: action }))
      .ofType(ADD)
      .pipe(switchMap(() => response));

    expect(effect$).toBeObservable(expected);
  });
});
開發者ID:AlexChar,項目名稱:platform,代碼行數:77,代碼來源:actions.spec.ts

示例2: describe

describe('Actions', function() {
  let actions$: Actions;
  let dispatcher: ScannedActionsSubject;

  const ADD = 'ADD';
  const SUBTRACT = 'SUBTRACT';

  function reducer(state: number = 0, action: Action) {
    switch (action.type) {
      case ADD:
        return state + 1;
      case SUBTRACT:
        return state - 1;
      default:
        return state;
    }
  }

  beforeEach(function() {
    const injector = ReflectiveInjector.resolveAndCreate([
      StoreModule.forRoot(reducer).providers || [],
      Actions,
    ]);

    actions$ = injector.get(Actions);
    dispatcher = injector.get(ScannedActionsSubject);
  });

  it('should be an observable of actions', function() {
    const actions = [
      { type: ADD },
      { type: SUBTRACT },
      { type: SUBTRACT },
      { type: SUBTRACT },
    ];

    let iterations = [...actions];

    actions$.subscribe({
      next(value) {
        let change = iterations.shift();
        expect(value.type).toEqual(change!.type);
      },
    });

    actions.forEach(action => dispatcher.next(action));
  });

  it('should let you filter out actions', function() {
    const actions = [ADD, ADD, SUBTRACT, ADD, SUBTRACT];
    const expected = actions.filter(type => type === ADD);

    actions$.ofType(ADD).map(update => update.type).toArray().subscribe({
      next(actual) {
        expect(actual).toEqual(expected);
      },
    });

    actions.forEach(action => dispatcher.next({ type: action }));
    dispatcher.complete();
  });
});
開發者ID:rjokelai,項目名稱:platform,代碼行數:62,代碼來源:actions.spec.ts

示例3: it

  it('should let you filter out actions', function() {
    const actions = [ADD, ADD, SUBTRACT, ADD, SUBTRACT];
    const expected = actions.filter(type => type === ADD);

    actions$.ofType(ADD).map(update => update.type).toArray().subscribe({
      next(actual) {
        expect(actual).toEqual(expected);
      },
    });

    actions.forEach(action => dispatcher.next({ type: action }));
    dispatcher.complete();
  });
開發者ID:rjokelai,項目名稱:platform,代碼行數:13,代碼來源:actions.spec.ts

示例4:

 actions.forEach(action => dispatcher.next({ type: action }));
開發者ID:AlexChar,項目名稱:platform,代碼行數:1,代碼來源:actions.spec.ts


注:本文中的@ngrx/store.ScannedActionsSubject類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。