本文整理汇总了TypeScript中@jupyterlab/coreutils.StateDB.fetch方法的典型用法代码示例。如果您正苦于以下问题:TypeScript StateDB.fetch方法的具体用法?TypeScript StateDB.fetch怎么用?TypeScript StateDB.fetch使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类@jupyterlab/coreutils.StateDB
的用法示例。
在下文中一共展示了StateDB.fetch方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: it
it('should allow an overwrite data transformation', async () => {
const transform = new PromiseDelegate<StateDB.DataTransform>();
const db = new StateDB({
namespace: 'test',
transform: transform.promise
});
const prepopulate = new StateDB({ namespace: 'test' });
const key = 'foo';
const correct = 'bar';
const incorrect = 'baz';
const transformation: StateDB.DataTransform = {
type: 'overwrite',
contents: { [key]: correct }
};
// By sharing a namespace, the two databases will share data.
await prepopulate.save(key, incorrect);
let value = await prepopulate.fetch(key);
expect(value).to.equal(incorrect);
transform.resolve(transformation);
await transform.promise;
value = await db.fetch(key);
expect(value).to.equal(correct);
await db.clear();
});
示例2: it
it('should resolve a nonexistent key fetch with undefined', done => {
let { localStorage } = window;
let db = new StateDB({ namespace: 'test-namespace' });
let key = 'foo:bar';
expect(localStorage.length).to.be(0);
db.fetch(key)
.then(fetched => { expect(fetched).to.be(undefined); })
.then(done)
.catch(done);
});
示例3: StateDB
activate: (app: JupyterLab) => {
const state = new StateDB({ namespace: app.info.namespace });
const version = app.info.version;
const key = 'statedb:version';
const fetch = state.fetch(key);
const save = () => state.save(key, { version });
const reset = () => state.clear().then(save);
const check = (value: JSONObject) => {
let old = value && value['version'];
if (!old || old !== version) {
const previous = old || 'unknown';
console.log(`Upgraded: ${previous} to ${version}; Resetting DB.`);
return reset();
}
};
app.commands.addCommand(CommandIDs.clearStateDB, {
label: 'Clear Application Restore State',
execute: () => state.clear()
});
return fetch.then(check, reset).then(() => state);
}