2022-08-17
2378
#react
Glad Chinda
366
Aug 17, 2022 ⋅ 8 min read

How to validate React props using PropTypes

Glad Chinda Full-stack web developer learning new hacks one day at a time. Web technology enthusiast. Hacking stuffs @theflutterwave.

Recent posts:

6 fast (native) alternatives for VSCode

VSCode has architectural performance limits. Compare six fast, native code editors built for lower resource usage.

Shalitha Suranga
Jan 9, 2026 ⋅ 10 min read

Moving beyond RxJS: A guide to TanStack Pacer

Build a React infinite scroll gallery with TanStack Pacer. Learn debouncing, throttling, batching, and rate limiting without RxJS complexity.

Emmanuel John
Jan 9, 2026 ⋅ 8 min read
the replay january 7

The Replay (1/7/26): React’s biggest problem, TanStack’s evolution, and more

Discover what’s new in The Replay, LogRocket’s newsletter for dev and engineering leaders, in the January 7th issue.

Matt MacCormack
Jan 7, 2026 ⋅ 31 sec read
jack herrington useeffectevent

React has finally solved its biggest problem: The joys of useEffectEvent

Jack Herrington breaks down how React’s new useEffectEvent Hook stabilizes behavior, simplifies timers, and enables predictable abstractions.

Jack Herrington
Jan 7, 2026 ⋅ 5 min read
View all posts

7 Replies to "How to validate React props using <code>PropTypes</code>"

  1. Great article. Only one thing that is needed to fix: in the section “Multiple types” in the unionProp example you wrote PropType instead of PropTypes (found this problem after copying this to my code).

  2. Provided you’re using standard eslint rule set, you should be returning from your custom validator function isEmail at the end of it too, to be consistent with the consistent-return eslint rule (https://eslint.org/docs/rules/consistent-return). It expects that if you use a condition to return from your function when that condition is true, you would also return something (probably different) when condition is false.

  3. Hello,
    In the article it says prop-types is used only in development mode, However when installing the package you are using –save option to install it on production… ? is that correct, shouldn’t it be –dev instead?

Leave a Reply

Hey there, want to help make our blog better?

Join LogRocket’s Content Advisory Board. You’ll help inform the type of content we create and get access to exclusive meetups, social accreditation, and swag.

Sign up now