本文整理汇总了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);
});
});
示例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();
});
});
示例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();
});
示例4:
actions.forEach(action => dispatcher.next({ type: action }));