The dependency type between the components will define the best approach.
For instance, redux is a great option if you plan to have a central store. However other approaches are possible:
-
Parent to Child
- Props
- Instance Methods
-
Child to Parent
- Callback Functions
- Event Bubbling
-
Sibling to Sibling
- Parent Component
-
Any to Any
- Observer Pattern
- Global Variables
- Context
Please find more detailed information about each of the approaches here