What is the difference between React Native and React?

  • React Native is a mobile app development framework, while React is a web development framework
  • React Native is a JavaScript library, while React is a markup language
  • React Native is used for developing web applications, while React is used for developing mobile applications
  • React Native and React are the same thing
React Native is a mobile app development framework that allows developers to build mobile applications using JavaScript and React. It is a separate technology from React, which is a JavaScript library for building user interfaces on the web. While both React and React Native use a similar programming model, they have different APIs and are optimized for different platforms.

What is the purpose of using super constructor with props argument?

  • To access the parent component's state
  • To create a new instance of a component
  • To initialize the component's props and state
  • To pass props to the parent component
In React, the super() constructor with props argument is used to initialize the component's props and state. It is required when defining a constructor in a class component, and should always be called before accessing this.props or this.state.

What are styled components?

  • A way to define styles in a separate CSS file
  • A way to define styles using inline styles in JavaScript
  • A way to define styles using a preprocessor like Sass or Less
  • A library for creating React components with embedded styles
Styled components are a library for creating React components with embedded styles. They allow you to define styles directly in your JavaScript code using tagged template literals, which makes it easy to style your components based on props and state. Styled components also provide a number of other features, such as server-side rendering, theming, and global styles.

How to access Redux store outside a component?

  • Use a global variable
  • Use the useContext hook
  • Use the useSelector hook
  • Use the getState() method
To access the Redux store outside of a component, you can use the getState() method provided by the Redux store. This allows you to access the current state of the store and is often used in middleware or in other parts of the application that do not have direct access to the store.

How to make AJAX call and In which component lifecycle methods should I make an AJAX call?

  • Use the "XMLHttpRequest" object in the "componentDidUpdate()" method
  • Use the "axios" library in the "componentWillMount()" method
  • Use the "fetch" API in the "componentDidMount()" method
  • Use the "jQuery.ajax" function in the "componentWillReceiveProps()" method
In React, you can make an AJAX call by using the "fetch" API or a library like Axios or jQuery. The recommended lifecycle method to make an AJAX call is "componentDidMount()", which is called once the component has been mounted to the DOM. This method is a good place to fetch data from an API or server, and update the component state with the new data.

How Relay is different from Redux?

  • Relay is a library for handling forms in Redux applications, while Redux is a state management library
  • Relay is a state management library, while Redux is a library for handling network requests
  • Relay is a library for handling data fetching and caching, while Redux is a state management library
  • Relay is a library for handling routing in Redux applications, while Redux is a state management library
Relay is a library for handling data fetching and caching in React applications. It is often used in conjunction with GraphQL APIs. While Redux is a state management library, Relay focuses specifically on data fetching and caching. Relay provides a number of features, such as declarative data requirements, automatic query generation, and optimistic updates.

What is TestRenderer package in React?

  • A package for mocking HTTP requests
  • A package for generating test data
  • A tool for simulating component rendering without deep rendering
  • A tool for rendering React components to JSON format
TestRenderer is a package that allows developers to render React components to a JSON format, making it easier to test and debug components. It is used for snapshot testing and is similar to the ReactTestUtils package.

What is the behavior of uncaught errors in React 16?

  • They are ignored
  • They are logged to the console
  • They trigger a fatal error and crash the application
  • They trigger an error boundary to catch the error
Uncaught errors in React 16 and later versions trigger a fatal error and crash the application. This behavior was introduced in order to prevent subtle bugs and inconsistencies that could result from errors being silently ignored or logged to the console.

What is Concurrent Rendering?

  • A rendering technique for low-end devices
  • A rendering technique for high-end devices
  • A new feature in React 18
  • A way to render multiple parts of a component tree at the same time
Concurrent Rendering is a new rendering strategy introduced in React 18 that allows multiple parts of a component tree to be rendered at the same time, without blocking the UI thread. This means that the user interface can remain responsive while React is rendering updates. Concurrent Rendering is particularly useful for large and complex applications that need to maintain high performance.

How to pass a parameter to an event handler or callback?

  • Using an arrow function
  • Using the bind method
  • Using the event object
  • Using the setState method
A parameter can be passed to an event handler or callback in React by using an arrow function. The arrow function takes the event as a parameter, along with any additional parameters that need to be passed. This approach ensures that the event object is properly handled and that the correct parameters are passed to the event handler or callback.