如何让正确的高亮自定义使用JS写的Hook?
How make correct highlight custom useHook writen in JS?
我使用 VS Code 在 React 中编写自定义项目。
当我写 useState 时正确突出显示值和回调,因为存在 *.d.ts
但是如果我在 JS 中编写自定义钩子 useOfferObserver
,我可以在我的函数中添加任何规范以正确突出显示吗?
我希望 setFieldData
与 setFormError
具有相同的颜色
export const useOfferObserver = () => {
const [count, setCount] = useState(0)
useEffect(() => {
const subscriberID = uuidv4()
offerDL.subscribe(subscriberID, () => setCount(count + 1))
return () => offerDL.unSubscribe(subscriberID)
}, [])
return [offerDL, (data) => {
console.log('Data should be updated', data)
}]
}
@rioV8 评论后我找到了解决方案。
这是为我的自定义挂钩添加 JSDoc。
/**
* This callback is displayed as part of the Requester class.
* @callback SetterCallback
* @param {object} data
*/
/**
* @returns {[offerData: Object, setter: SetterCallback]}
*/
export const useOfferObserver = () => {
const [, setTime] = useState(performance.now())
return [offerDL, (data, skipBackendRequest = false) => {
return offerDL.update(data, skipBackendRequest)
.then(() => setTime(performance.now()))
}]
}
在那之后我的钩子有正确的突出显示。
我使用 VS Code 在 React 中编写自定义项目。
当我写 useState 时正确突出显示值和回调,因为存在 *.d.ts
但是如果我在 JS 中编写自定义钩子 useOfferObserver
,我可以在我的函数中添加任何规范以正确突出显示吗?
我希望 setFieldData
与 setFormError
export const useOfferObserver = () => {
const [count, setCount] = useState(0)
useEffect(() => {
const subscriberID = uuidv4()
offerDL.subscribe(subscriberID, () => setCount(count + 1))
return () => offerDL.unSubscribe(subscriberID)
}, [])
return [offerDL, (data) => {
console.log('Data should be updated', data)
}]
}
@rioV8 评论后我找到了解决方案。
这是为我的自定义挂钩添加 JSDoc。
/**
* This callback is displayed as part of the Requester class.
* @callback SetterCallback
* @param {object} data
*/
/**
* @returns {[offerData: Object, setter: SetterCallback]}
*/
export const useOfferObserver = () => {
const [, setTime] = useState(performance.now())
return [offerDL, (data, skipBackendRequest = false) => {
return offerDL.update(data, skipBackendRequest)
.then(() => setTime(performance.now()))
}]
}
在那之后我的钩子有正确的突出显示。