React-Interview
React-Interview
Synthetic Events:
1. Data Fetching
a. Large-scale applications often need to fetch data from multiple APIs or endpoints.
Redux-Thunk allows you to encapsulate these asynchronous operations in action
creators.
b. You can handle scenarios like fetching initial data when a component mounts,
paginating through large datasets, or refreshing data periodically.
2. Optimistic Updates
a. In applications where user interactions trigger asynchronous actions with optimistic
UI updates, Redux-Thunk can help manage the flow of actions.
b. You can dispatch optimistic actions to update the UI immediately and then dispatch
additional actions based on the success or failure of the asynchronous operation.
The key components that enable this centralized approach to state management are:
1. Store - holds all the data for your application. single source of truth for your application's
state.
2. Actions - An action is an object that describes what changes need to be made to the state of
your application. It sends data from your application to the Redux store and serves as the
only way to update the store. Type and payload properties. Action creators are functions that
create and return action objects.
3. Dispatch - a function provided by the store that allows you to send an action to update the
state of your application.
4. Reducers - a function that takes in the current state of an application and an action as
arguments, and returns a new state based on the action
Babel is used to transpile JSX code into plain JavaScript. JSX is a syntax extension for JavaScript that
allows you to write HTML-like code within JavaScript. Since browsers do not natively understand JSX,
Babel converts it into standard JavaScript functions that browsers can execute
Webpack is a bundler that uses a dependency graph to bundle our code and assets (incuding static
assets such as images) into a ‘bundle’ which we can then deploy.
What are the rules that must be followed while using React Hooks
useReducer - useReducer is a React Hook that lets you add a reducer to your component.
Links –