mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2025-08-21 13:01:01 +08:00
21 lines
570 B
TypeScript
21 lines
570 B
TypeScript
import type { BackButtonEvent } from "@ionic/core/components";
|
|
|
|
type Handler = (processNextHandler: () => void) => Promise<any> | void | null;
|
|
export interface UseBackButtonResult {
|
|
unregister: () => void;
|
|
}
|
|
|
|
export const useBackButton = (
|
|
priority: number,
|
|
handler: Handler
|
|
): UseBackButtonResult => {
|
|
const callback = (ev: BackButtonEvent) =>
|
|
ev.detail.register(priority, handler);
|
|
const unregister = () =>
|
|
document.removeEventListener("ionBackButton", callback);
|
|
|
|
document.addEventListener("ionBackButton", callback);
|
|
|
|
return { unregister };
|
|
};
|