如何让正确的高亮自定义使用JS写的Hook?

How make correct highlight custom useHook writen in JS?

我使用 VS Code 在 React 中编写自定义项目。

当我写 useState 时正确突出显示值和回调,因为存在 *.d.ts

但是如果我在 JS 中编写自定义钩子 useOfferObserver,我可以在我的函数中添加任何规范以正确突出显示吗?

我希望 setFieldDatasetFormError

具有相同的颜色
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()))
  }]
}

在那之后我的钩子有正确的突出显示。