React寻找功能代码改进

发布于 2025-01-22 19:37:51 字数 672 浏览 0 评论 0原文

我使用redux。每次我必须使用代码的一部分时:

  const dispatch = useDispatch()

然后将功能称为:

dispatch(endpointError(true))

我想实现的目标是拥有一个地方,然后导出加上适当的函数。只需将其保存在一个地方:

const errorFunctions = () => {
  const dispatch = useDispatch()

  setEndpointError = () => dispatch(endpointError(true))
}

export const { setEndpointError } = errorFunctions

然后仅使用setendPoInterror()我需要它即可。我认为它看起来很性感。 例如,当您需要将所有代码保持较短时,我认为是错误的,就像错误处理一样。

但是它不是合法的,我们不幸的是做到这一点。开发人员,您看到有我们可以编写并使其正常工作吗?

我的想法就像您有20个不同的屏幕一样,到处都是类似的错误处理,并且不编写每个位置const dispatch = usedispatch()

寻找改进:)

I use Redux. Every time I have to use part of the code:

  const dispatch = useDispatch()

And then call the function like:

dispatch(endpointError(true))

What I want to achieve is to have some one place and then export plus call the proper function. Just keep it in one place like:

const errorFunctions = () => {
  const dispatch = useDispatch()

  setEndpointError = () => dispatch(endpointError(true))
}

export const { setEndpointError } = errorFunctions

And then just use only setEndpointError() when I will need it. It looks sexy I think.
For example when you would need to keep your all code shorter it is a plus like in error handling I think so.

But there it is not legal and we cannot unfortunately make it. Devs do you see have can we write it and make it working?

My idea is like you have 20 different screens, everywhere would be similar error handling and would be good to not write every place const dispatch = useDispatch()

Looking for improvements :)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

凑诗 2025-01-29 19:37:51

您可以为此创建一个自定义钩子:

export const useErrors = () => {
  const dispatch = useDispatch()

  return {
    setEndpointError: () => dispatch(endpointError(true)),
    setOtherError: () => dispatch(otherError())
  }
}

比这样使用:

const { setEndpointError, setOtherError } = useErrors()
setEndpointError()

You can create a custom hook for this:

export const useErrors = () => {
  const dispatch = useDispatch()

  return {
    setEndpointError: () => dispatch(endpointError(true)),
    setOtherError: () => dispatch(otherError())
  }
}

Than you use it like this:

const { setEndpointError, setOtherError } = useErrors()
setEndpointError()
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文