use-hot-key-element
v1.0.2
Published
Make Hot Key in view easier
Downloads
19
Maintainers
Readme
Tại sao?
- useKeyboardJs không giải quyết được vấn đề sử dụng phím tắt hoặc tổ hợp phím tắt với một html element cụ thể (ví dụ một textfield có id
#input-textfield
). - Thao tác với phím tắt luôn tuyệt vời hơn click chuột.
Cài đặt:
npm i -S use-hot-key-element
hoặc
yarn add use-hot-key-element
Sử dụng:
import React, {useEffect, useState} from 'react'
import useHotKey from 'use-hot-key-element'
function Form(){
const [name, setName] = useState('')
const [isNameInputEnterPressed] = useHotKey('enter', '#name-input')//khi nhấn phím enter trên element có id `name-input`
useEffect(()=>{
if(isNameInputEnterPressed) console.log(name) // log name khi enter trên `name-input`
},[isNameInputEnterPressed])
return (
<div>
<input id="name-input" value={name} onchange={(e)=>setName(e.target.value)}/>
</div>
)
}
API:
- useHotKey
(keys: String|Array, domQuerySelectorOrFunc: String|Function)
- useCtrlWithKey
(key: String, domQuerySelectorOrFunc: String|Function)
- useShiftWithKey
(key: String, domQuerySelectorOrFunc: String|Function)
- useCtrlShiftWithKey
(key: String, domQuerySelectorOrFunc: String|Function)
- useCtrlEnter
(domQuerySelectorOrFunc: String|Function)
- useBackSpace
(domQuerySelectorOrFunc: String|Function)
Trong đó:
key
là 1 tổ hợp phím hoặc 1 phím, ví dụ:'z'
,'ctrl+c'
,'shift+enter'
,'shift+meta+v'(cho mac)
. Các phím đặc biệt bao gồmctrl
(Mac: phímcontrol
hoặccommand
),alt
(Mac: phímoption
),shift
.keys
là một mảng củakey
sử dụng trong trường hợp lắng nghe nhiềukey
khác nhau, hoặc 1key
domQuerySelectorOrFunc
là selector của element, hoặc 1 function được thực hiện khi nhấnkey
License:
MIT