UNPKG

song-ui-u

Version:

vue3 + js的PC前端组件库

1 lines 3.94 kB
{"version":3,"file":"index.mjs","sources":["../../../../packages/hook/use-event/index.js"],"sourcesContent":["import { ref, getCurrentInstance } from \"vue\";\nexport const useEvent = (options = {}) => {\n let isFocus = ref(false);\n let isHover = ref(false);\n let isComposition = ref(false);\n // emit\n const { emit } = getCurrentInstance();\n // change\n const changeEvent = (e) => {\n emit(\"change\", e);\n };\n // 键盘事件\n const keydownEvent = (e) => {\n emit(\"keydown\", e);\n };\n const keyupEvent = (e) => {\n emit(\"keyup\", e);\n };\n // 获取焦点\n const focusEvent = (e) => {\n isFocus.value = true;\n emit(\"focus\", e);\n };\n // 失去焦点\n const blurEvent = (e) => {\n isFocus.value = false;\n emit(\"blur\", e);\n options?.afterBlur?.(); // 失焦后\n };\n // 移入事件\n const mouseenterEvent = (e) => {\n isHover.value = true;\n emit(\"mouseenter\", e);\n };\n // 移出事件\n const mouselevelEvent = (e) => {\n isHover.value = false;\n\n emit(\"mouselevel\", e);\n };\n /**\n * 输入法事件\n */\n // 开始\n const compositionStartEvent = (e) => {\n isComposition.value = true;\n emit(\"compositionstart\", e);\n };\n // 更新\n const compositionUpdateEvent = (e) => {\n isComposition.value = true;\n emit(\"compositionupdate\", e);\n };\n // 结束\n const compositionEndEvent = (e) => {\n emit(\"compositionend\", e);\n return new Promise((resolve, reject) => {\n if (isComposition.value) {\n isComposition.value = false;\n resolve();\n return false;\n }\n reject();\n });\n };\n return {\n focusEvent,\n blurEvent,\n mouseenterEvent,\n mouselevelEvent,\n compositionStartEvent,\n compositionUpdateEvent,\n compositionEndEvent,\n changeEvent,\n keydownEvent,\n keyupEvent,\n isFocus,\n isHover,\n isComposition,\n };\n};\n"],"names":[],"mappings":";;AACO,MAAM,QAAW,GAAA,CAAC,OAAU,GAAA,EAAO,KAAA;AACxC,EAAI,IAAA,OAAA,GAAU,IAAI,KAAK,CAAA,CAAA;AACvB,EAAI,IAAA,OAAA,GAAU,IAAI,KAAK,CAAA,CAAA;AACvB,EAAI,IAAA,aAAA,GAAgB,IAAI,KAAK,CAAA,CAAA;AAE7B,EAAM,MAAA,EAAE,IAAK,EAAA,GAAI,kBAAmB,EAAA,CAAA;AAEpC,EAAM,MAAA,WAAA,GAAc,CAAC,CAAM,KAAA;AACzB,IAAA,IAAA,CAAK,UAAU,CAAC,CAAA,CAAA;AAAA,GAClB,CAAA;AAEA,EAAM,MAAA,YAAA,GAAe,CAAC,CAAM,KAAA;AAC1B,IAAA,IAAA,CAAK,WAAW,CAAC,CAAA,CAAA;AAAA,GACnB,CAAA;AACA,EAAM,MAAA,UAAA,GAAa,CAAC,CAAM,KAAA;AACxB,IAAA,IAAA,CAAK,SAAS,CAAC,CAAA,CAAA;AAAA,GACjB,CAAA;AAEA,EAAM,MAAA,UAAA,GAAa,CAAC,CAAM,KAAA;AACxB,IAAA,OAAA,CAAQ,KAAQ,GAAA,IAAA,CAAA;AAChB,IAAA,IAAA,CAAK,SAAS,CAAC,CAAA,CAAA;AAAA,GACjB,CAAA;AAEA,EAAM,MAAA,SAAA,GAAY,CAAC,CAAM,KAAA;AACvB,IAAA,OAAA,CAAQ,KAAQ,GAAA,KAAA,CAAA;AAChB,IAAA,IAAA,CAAK,QAAQ,CAAC,CAAA,CAAA;AACd,IAAA,OAAA,EAAS,SAAY,IAAA,CAAA;AAAA,GACvB,CAAA;AAEA,EAAM,MAAA,eAAA,GAAkB,CAAC,CAAM,KAAA;AAC7B,IAAA,OAAA,CAAQ,KAAQ,GAAA,IAAA,CAAA;AAChB,IAAA,IAAA,CAAK,cAAc,CAAC,CAAA,CAAA;AAAA,GACtB,CAAA;AAEA,EAAM,MAAA,eAAA,GAAkB,CAAC,CAAM,KAAA;AAC7B,IAAA,OAAA,CAAQ,KAAQ,GAAA,KAAA,CAAA;AAEhB,IAAA,IAAA,CAAK,cAAc,CAAC,CAAA,CAAA;AAAA,GACtB,CAAA;AAKA,EAAM,MAAA,qBAAA,GAAwB,CAAC,CAAM,KAAA;AACnC,IAAA,aAAA,CAAc,KAAQ,GAAA,IAAA,CAAA;AACtB,IAAA,IAAA,CAAK,oBAAoB,CAAC,CAAA,CAAA;AAAA,GAC5B,CAAA;AAEA,EAAM,MAAA,sBAAA,GAAyB,CAAC,CAAM,KAAA;AACpC,IAAA,aAAA,CAAc,KAAQ,GAAA,IAAA,CAAA;AACtB,IAAA,IAAA,CAAK,qBAAqB,CAAC,CAAA,CAAA;AAAA,GAC7B,CAAA;AAEA,EAAM,MAAA,mBAAA,GAAsB,CAAC,CAAM,KAAA;AACjC,IAAA,IAAA,CAAK,kBAAkB,CAAC,CAAA,CAAA;AACxB,IAAA,OAAO,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAW,KAAA;AACtC,MAAA,IAAI,cAAc,KAAO,EAAA;AACvB,QAAA,aAAA,CAAc,KAAQ,GAAA,KAAA,CAAA;AACtB,QAAQ,OAAA,EAAA,CAAA;AACR,QAAO,OAAA,KAAA,CAAA;AAAA,OACT;AACA,MAAO,MAAA,EAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAAA,GACH,CAAA;AACA,EAAO,OAAA;AAAA,IACL,UAAA;AAAA,IACA,SAAA;AAAA,IACA,eAAA;AAAA,IACA,eAAA;AAAA,IACA,qBAAA;AAAA,IACA,sBAAA;AAAA,IACA,mBAAA;AAAA,IACA,WAAA;AAAA,IACA,YAAA;AAAA,IACA,UAAA;AAAA,IACA,OAAA;AAAA,IACA,OAAA;AAAA,IACA,aAAA;AAAA,GACF,CAAA;AACF;;;;"}