Haptics
Introduction:
Vibration Plugin
Reference
Method
impactLight
Impact light object
ts
import { hapticsPlugin, ImpactStyle } from "@plaoc/plugins";
await hapticsPlugin.impactLight({ style: ImpactStyle.Heavy });
notification
Vibration notification
ts
import { hapticsPlugin, NotificationType } from "@plaoc/plugins";
await hapticsPlugin.notification({ type: NotificationType.Success });
vibrateClick
Feedback vibration for click gesture
ts
import { hapticsPlugin } from "@plaoc/plugins";
await hapticsPlugin.vibrateClick();
vibrateDisabled
Feedback vibration for disabled gesture
ts
import { hapticsPlugin } from "@plaoc/plugins";
await hapticsPlugin.vibrateDisabled();
vibrateDoubleClick
Feedback vibration for double-click gesture
ts
import { hapticsPlugin } from "@plaoc/plugins";
await hapticsPlugin.vibrateDoubleClick();
vibrateHeavyClick
Feedback vibration for heavy-click gesture, such as menu key/long press/3Dtouch
ts
import { hapticsPlugin } from "@plaoc/plugins";
await hapticsPlugin.vibrateHeavyClick();
vibrateTick
Tick
ts
import { hapticsPlugin } from "@plaoc/plugins";
await hapticsPlugin.vibrateTick();
vibrate
Custom effect
ts
import { hapticsPlugin, VibrateOptions } from "@plaoc/plugins";
await hapticsPlugin.vibrate({ duration: [100, 200, 300] });
Parameter
ImpactStyle
Impact feedback intensity
ts
import { ImpactStyle } from "@plaoc/plugins";
ImpactStyle.Heavy;
NotificationType
Notification type
ts
import { NotificationType } from "@plaoc/plugins";
NotificationType.Success;
VibrateOptions
Vibration frequency
ts
import { VibrateOptions } from "@plaoc/plugins";
const options: VibrateOptions = { duration: [100, 1, 200] };
Usage Plugins
vue
<script setup lang="ts">
import { hapticsPlugin } from "@plaoc/plugins";
async function customVibrate() {
await hapticsPlugin.vibrate({ duration: [10, 2, 100, 3, 10] });
}
</script>
Usage WebComponent
vue
<script setup lang="ts">
import { ref } from "vue";
import { HTMLDwebHapticsElement } from "@plaoc/plugins";
const $hapticsPlugin = ref<HTMLDwebHapticsElement>();
let haptics: HTMLDwebHapticsElement;
onMounted(async () => {
haptics = $hapticsPlugin.value!;
});
async function customVibrate() {
haptics.vibrate({ duration: [10, 2, 100, 3, 10] });
}
</script>
<template>
<dweb-haptics ref="$hapticsPlugin"></dweb-haptics>
</template>