// 输入框获取焦点的时候禁用控制台动作 import store from '@/store' const focusDisableKeys = { mounted(el) { const inputEl = el.querySelectorAll('input')?.[0] || el.querySelectorAll('textarea')?.[0] inputEl.__vueFocusHandler__ = { focus: () => (store.state.task.keysDisabled = true), blur: () => (store.state.task.keysDisabled = false), } inputEl.addEventListener('focus', inputEl.__vueFocusHandler__.focus) inputEl.addEventListener('blur', inputEl.__vueFocusHandler__.blur) }, unmounted(el) { const inputEl = el.querySelectorAll('input')?.[0] || el.querySelectorAll('textarea')?.[0] inputEl.removeEventListener('focus', inputEl.__vueFocusHandler__.focus) inputEl.removeEventListener('blur', inputEl.__vueFocusHandler__.blur) delete inputEl.__vueFocusHandler__ }, } export default focusDisableKeys