本文整理汇总了TypeScript中@dojo/framework/stores/Store.Store.apply方法的典型用法代码示例。如果您正苦于以下问题:TypeScript Store.apply方法的具体用法?TypeScript Store.apply怎么用?TypeScript Store.apply使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类@dojo/framework/stores/Store.Store
的用法示例。
在下文中一共展示了Store.apply方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: it
it('should filter', async () => {
const fetcherStub = stub();
fetcherStub.returns({
data: [{ id: '1' }],
meta: {
total: 10000
}
});
store.apply([{ op: OperationType.REPLACE, path: new Pointer(['grid', 'meta', 'page']), value: 10 }]);
await filterProcess(store)({ filterOptions: { columnId: 'id', value: 'filter' }, id: 'grid', fetcher: fetcherStub });
const pages = store.get(store.path('grid', 'data'));
assert.deepEqual(pages, { pages: { 'page-1': [{ id: '1' }] } });
const meta = store.get(store.path('grid', 'meta'));
assert.deepEqual(meta, {
currentFilter: {
columnId: 'id',
value: 'filter'
},
page: 1,
filter: { id: 'filter' },
fetchedPages: [1],
isSorting: false,
total: 10000
});
});
示例2: it
it('should use store from properties when passed', () => {
const store = new Store();
const filterableConfig = [{ id: 'id', title: 'id', filterable: true }];
const h = harness(() =>
w(MockMetaMixin(Grid, mockMeta), {
fetcher: noop,
updater: noop,
columnConfig: filterableConfig,
store,
height: 500
})
);
h.expect(() =>
v('div', { key: 'root', classes: [css.root, fixedCss.rootFixed], role: 'table', 'aria-rowcount': null }, [
v('div', {
key: 'header',
scrollLeft: 0,
classes: [css.header, fixedCss.headerFixed, css.filterGroup],
row: 'rowgroup'
}, [
w(Header, {
key: 'header-row',
columnConfig: filterableConfig,
sorter: noop,
sort: undefined,
filter: undefined,
filterer: noop
})
]),
w(Body, {
key: 'body',
pages: {},
totalRows: undefined,
pageSize: 100,
columnConfig: filterableConfig,
pageChange: noop,
updater: noop,
fetcher: noop,
onScroll: noop,
height: 300
}),
v('div', { key: 'footer' }, [
w(Footer, {
key: 'footer-row',
total: undefined,
page: 1,
pageSize: 100
})
])
])
);
store.apply(
[
{
op: OperationType.REPLACE,
path: new Pointer('_grid/data/pages/page-1'),
value: [{ id: 'id' }]
},
{
op: OperationType.REPLACE,
path: new Pointer('_grid/meta'),
value: {
page: 10,
sort: {
columnId: 'id',
direction: 'asc'
},
filter: {
columnId: 'id',
value: 'id'
},
total: 100
}
}
],
true
);
h.expect(() =>
v('div', { key: 'root', classes: [css.root, fixedCss.rootFixed], role: 'table', 'aria-rowcount': '100' }, [
v('div', {
key: 'header',
scrollLeft: 0,
classes: [css.header, fixedCss.headerFixed, css.filterGroup],
row: 'rowgroup'
}, [
w(Header, {
key: 'header-row',
columnConfig: filterableConfig,
sorter: noop,
sort: {
columnId: 'id',
direction: 'asc'
},
filter: {
columnId: 'id',
value: 'id'
},
//.........这里部分代码省略.........