From 1595cb282aab5399862fac6406b5de550863e3b6 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期一, 03 四月 2023 00:05:09 +0800 Subject: [PATCH] update 调整代码格式 --- src/directive/common/copyText.ts | 100 +++++++++++++++++++++++++------------------------- 1 files changed, 50 insertions(+), 50 deletions(-) diff --git a/src/directive/common/copyText.ts b/src/directive/common/copyText.ts index b924b8f..b6805f8 100644 --- a/src/directive/common/copyText.ts +++ b/src/directive/common/copyText.ts @@ -4,63 +4,63 @@ */ export default { - beforeMount(el: any, { value, arg }: any) { - if (arg === 'callback') { - el.$copyCallback = value; - } else { - el.$copyValue = value; - const handler = () => { - copyTextToClipboard(el.$copyValue); - if (el.$copyCallback) { - el.$copyCallback(el.$copyValue); - } - }; - el.addEventListener('click', handler); - el.$destroyCopy = () => el.removeEventListener('click', handler); - } - } + beforeMount(el: any, { value, arg }: any) { + if (arg === 'callback') { + el.$copyCallback = value; + } else { + el.$copyValue = value; + const handler = () => { + copyTextToClipboard(el.$copyValue); + if (el.$copyCallback) { + el.$copyCallback(el.$copyValue); + } + }; + el.addEventListener('click', handler); + el.$destroyCopy = () => el.removeEventListener('click', handler); + } + } }; function copyTextToClipboard(input: string, { target = document.body } = {}) { - const element = document.createElement('textarea'); - const previouslyFocusedElement = document.activeElement as HTMLInputElement; - element.value = input; - // Prevent keyboard from showing on mobile - element.setAttribute('readonly', ''); + const element = document.createElement('textarea'); + const previouslyFocusedElement = document.activeElement as HTMLInputElement; + element.value = input; + // Prevent keyboard from showing on mobile + element.setAttribute('readonly', ''); - element.style.contain = 'strict'; - element.style.position = 'absolute'; - element.style.left = '-9999px'; - element.style.fontSize = '12pt'; // Prevent zooming on iOS + element.style.contain = 'strict'; + element.style.position = 'absolute'; + element.style.left = '-9999px'; + element.style.fontSize = '12pt'; // Prevent zooming on iOS - const selection = document.getSelection(); - let originalRange; - if (selection) { - originalRange = selection?.rangeCount > 0 && selection.getRangeAt(0); - } - target.append(element); - element.select(); + const selection = document.getSelection(); + let originalRange; + if (selection) { + originalRange = selection?.rangeCount > 0 && selection.getRangeAt(0); + } + target.append(element); + element.select(); - // Explicit selection workaround for iOS - element.selectionStart = 0; - element.selectionEnd = input.length; + // Explicit selection workaround for iOS + element.selectionStart = 0; + element.selectionEnd = input.length; - let isSuccess = false; - try { - isSuccess = document.execCommand('copy'); - } catch (err) { - console.error(err); - } - element.remove(); + let isSuccess = false; + try { + isSuccess = document.execCommand('copy'); + } catch (err) { + console.error(err); + } + element.remove(); - if (originalRange) { - selection?.removeAllRanges(); - selection?.addRange(originalRange); - } + if (originalRange) { + selection?.removeAllRanges(); + selection?.addRange(originalRange); + } - // Get the focus back on the previously focused element, if any - if (previouslyFocusedElement) { - previouslyFocusedElement.focus(); - } - return isSuccess; + // Get the focus back on the previously focused element, if any + if (previouslyFocusedElement) { + previouslyFocusedElement.focus(); + } + return isSuccess; } -- Gitblit v1.9.3