shortcut
介绍:
shortcut 插件,即长按 app 出现的捷径操作。
Reference
Method
registry
注册快速操作
icon 不传递在 Android 平台默认使用 app icon, iOS 当前不支持注册动态 shortcut 的时候传递 icon。
ts
import { shortcutPlugin, ShortcutOption } from "@plaoc/plugins";
const option: ShortcutOption = {
title: "新年快乐",
data: "这是一条发到ipcEvent的消息🧨",
icon: null,
};
const res = await shortcutPlugin.registry(option);
接收快捷消息
注册 shortcut 事件监听,来接收消息。
ts
import { dwebServiceWorker, toastPlugin } from "@plaoc/plugins";
dwebServiceWorker.addEventListener("shortcut", (event) => {
console.log("shortcut", event.data);
toastPlugin.show({ text: event.data });
});
Parameter
ShortcutOption
注册捷径的参数
ts
export interface ShortcutOption {
/**标题 */
title: string;
/**传递给应用的数据 */
data: string;
/**应用icon,不传递默认使用appIcon */
icon: Uint8Array | null;
}
Usage Plugins
vue
<script setup lang="ts">
import { reactive } from "vue";
import { shortcutPlugin, ShortcutOption } from "@plaoc/plugins";
const shortcut: ShortcutOption = reactive({
title: "新年快乐",
data: "这是一条发到ipcEvent的消息🧨",
icon: null,
});
const registry = async () => {
const res = await shortcutPlugin.registry(shortcut);
console.log("registry=>", res);
};
</script>
Usage WebComponent
vue
<script setup lang="ts">
import { onMounted, reactive, ref } from "vue";
import {
shortcutPlugin,
ShortcutOption,
HTMLDwebShortcutElement,
} from "@plaoc/plugins";
const $shortcutPlugin = ref<HTMLDwebShortcutElement>();
let shortcut: HTMLDwebShortcutElement;
onMounted(async () => {
shortcut = $shortcutPlugin.value!;
});
const shortcut: ShortcutOption = reactive({
title: "新年快乐",
data: "这是一条发到ipcEvent的消息🧨",
icon: null,
});
const registry = async () => {
const res = await shortcut.registry(shortcut);
console.log("registry=>", res);
};
</script>
<template>
<dweb-shortcut ref="$shortcutPlugin"></dweb-shortcut>
</template>