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? medium.com/@dan_abramov/making-sen...

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 Apr 29

Are we pretentious and arrogant?

Do you think that we, as developers, have a slighly tendency to become quite selfish because of our so specific-skills?

Stephen E. Chiang profile image
Pursuing a perpetual state of flow. Learn, Build, Eat, Sleep, Improve. Apply coffee / beer liberally.