Custom react hooks vs services

twitter logo github logo ・1 min read

I'm having a tough time explaining the difference between a custom react hook and a service.

It's easy to see the utility of the built in ones, but what about custom hooks?

with a regular service, I can :

  • import it to any component, provide it's functions and or state.
  • call or make use of react hooks.

When would you write a custom hook and when would you opt for a service?

What can you do with a custom hook that you can't do with a service?

twitter logo DISCUSS (6)
markdown guide

A service could be used wherever you want, a custom hook only inside a React component, you could use your service inside a custom hook or an async action creator (for Redux) or any other place you want.


Then what is the advantage of a custom hook over a service?


Inside a custom hook you can access to React context or define an state, things you can't inside a service outside the React application.

You can if it's a service inside the react application...

Hooks define state per call. This is very different. You can pass values between them and they execute while rendering.

Maybe this article helps?

Ah, so whereas services can be used as singletons, hooks are not because state is isolated...

However, if I don't need to define a state it can either be used as a hook or as a service?

Thanks for the article...and all that you do for react in general, cheers 🍻

Classic DEV Post from Jun 23

What Advice Would You Give Your 20-year-old Self?

If you could go back in time, what advice would you give your 20-year-old self?

Stephen E. Chiang profile image
Pursuing a perpetual state of flow. Learn, Build, Eat, Sleep, Improve. Apply ☕️ & 🍺 liberally.

Sore eyes? now has dark mode.

Go to the "misc" section of your settings and select night theme ❤️