本文整理汇总了TypeScript中common/actions.actions.statusMessage方法的典型用法代码示例。如果您正苦于以下问题:TypeScript actions.statusMessage方法的具体用法?TypeScript actions.statusMessage怎么用?TypeScript actions.statusMessage使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类common/actions.actions
的用法示例。
在下文中一共展示了actions.statusMessage方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: dispatchUpdateNotification
function dispatchUpdateNotification(
store: Store,
cave: Cave,
result: CheckUpdateResult
) {
if (!result) {
return;
}
if (!isEmpty(result.warnings)) {
store.dispatch(
actions.statusMessage({
message: [
"status.game_update.check_failed",
{ err: result.warnings[0] },
],
})
);
return;
}
if (isEmpty(result.updates)) {
store.dispatch(
actions.statusMessage({
message: ["status.game_update.not_found", { title: cave.game.title }],
})
);
} else {
store.dispatch(
actions.statusMessage({
message: ["status.game_update.found", { title: cave.game.title }],
})
);
}
}
示例2: async
onCancel: async () => {
store.dispatch(
actions.statusMessage({
message: `Install for ${game.title} cancelled!`,
})
);
},
示例3: async
onCancel: async () => {
store.dispatch(
actions.statusMessage({
message: ["status.installing_game.cancelled", { title: game.title }],
})
);
},
示例4: async
watcher.on(actions.copyToClipboard, async (store, action) => {
const text: string = action.payload.text;
clipboard.writeText(text);
store.dispatch(
actions.statusMessage({
message: ["status.copied_to_clipboard"],
})
);
});
示例5: async
watcher.on(actions.clearBrowsingData, async (store, action) => {
const promises: Promise<any>[] = [];
const userId = store.getState().profile.credentials.me.id;
const partition = partitionForUser(String(userId));
const ourSession = session.fromPartition(partition, { cache: true });
logger.debug(`asked to clear browsing data`);
if (action.payload.cache) {
logger.debug(`clearing cache for ${partition}`);
promises.push(
new ItchPromise((resolve, reject) => {
ourSession.clearCache(resolve);
})
);
}
if (action.payload.cookies) {
logger.debug(`clearing cookies for ${partition}`);
promises.push(
new ItchPromise((resolve, reject) => {
ourSession.clearStorageData(
{
storages: ["cookies"],
// for all origins
origin: null,
// look chromium just clear everything thanks
quotas: ["temporary", "persistent", "syncable"],
},
resolve
);
})
);
}
await Promise.all(promises);
store.dispatch(
actions.statusMessage({
message: ["prompt.clear_browsing_data.notification"],
})
);
});
示例6: call
(async () => {
try {
let navigated = false;
await call(messages.FetchGame, { gameId }, async client => {
client.onNotification(messages.FetchGameYield, ({ params }) => {
if (navigated) {
return;
}
navigated = true;
const { game } = params;
store.dispatch(
actions.navigateToGame({ game, window: "root" })
);
});
});
} catch (e) {
store.dispatch(
actions.statusMessage({ message: `Game ${gameId} not found` })
);
}
})().catch(e => {
示例7: async
watcher.on(actions.scanInstallLocations, async (store, action) => {
let names: string[] = [];
let widgetParams: IScanInstallLocationsParams = {
progress: 0.00001,
game: null,
};
const openModal = actions.openModal(
modalWidgets.scanInstallLocations.make({
window: "root",
title: ["preferences.scan_install_locations.title"],
message: "",
buttons: [
{
label: ["prompt.action.close"],
className: "secondary",
},
],
widgetParams,
unclosable: true,
})
);
store.dispatch(openModal);
const modalId = openModal.payload.id;
const update = () => {
store.dispatch(
actions.updateModalWidgetParams(
modalWidgets.scanInstallLocations.update({
id: modalId,
widgetParams,
})
)
);
};
try {
const importRes = await call(
messages.InstallLocationsScan,
{},
client => {
client.onNotification(messages.Progress, async ({ params }) => {
// TODO: relay ETA too?
widgetParams.progress = params.progress;
update();
});
client.onNotification(
messages.InstallLocationsScanYield,
async ({ params }) => {
names.push(params.game.title);
widgetParams.game = params.game;
update();
}
);
client.onRequest(
messages.InstallLocationsScanConfirmImport,
async ({ params }) => {
const res = await promisedModal(
store,
modalWidgets.naked.make({
window: "root",
title: ["preferences.scan_install_locations.confirm_import"],
message: ["preferences.scan_install_locations.message"],
detail: names.map(n => ` * ${n}`).join("\n") + "\n",
widgetParams: null,
buttons: [
{
label: [
"preferences.scan_install_locations.import_items",
{ numItems: params.numItems },
],
icon: "install",
action: actions.modalResponse({}),
},
"cancel",
],
})
);
return { confirm: !!res };
}
);
}
);
if (importRes.numFoundItems == 0) {
store.dispatch(
actions.statusMessage({
message: ["preferences.scan_install_locations.no_items_found"],
})
);
} else if (importRes.numImportedItems > 0) {
store.dispatch(actions.newItemsImported({}));
store.dispatch(
actions.statusMessage({
message: [
"preferences.scan_install_locations.items_imported",
{ numImportedItems: importRes.numImportedItems },
],
//.........这里部分代码省略.........