In React Testing Library, to find an element by its role, you can use the query ________.

  • findByAttribute
  • findByElement
  • findByRole
  • queryByAttribute
In React Testing Library, to find an element by its role, you can use the query findByRole(). This query is especially useful when you want to locate elements based on their accessibility roles, such as finding buttons, links, or other interactive elements. It helps ensure your tests are more accessible and accurately represent how users interact with your React components.

Which of the following is a key difference between styling in React for web and React Native?

  • React for web requires external libraries for styling, while React Native has built-in styles.
  • React for web supports responsive design, while React Native does not.
  • React for web uses CSS for styling, while React Native uses JavaScript-based styles.
  • React for web uses inline styles, while React Native uses external CSS files.
A significant difference between React for web and React Native is that React for web uses CSS for styling, while React Native uses JavaScript-based styles. In React Native, styles are applied using JavaScript objects, providing a more native feel and allowing for better performance and flexibility when styling components.

For pages that need to be private and can't be pre-rendered, Next.js recommends using ________.

  • getServerSideProps()
  • getStaticPaths()
  • getStaticProps()
  • useEffect()
When you have pages that need to be private and cannot be pre-rendered, Next.js recommends using getServerSideProps(). This function allows you to fetch data on the server for each request, making it suitable for dynamic or private content that cannot be statically generated. getStaticPaths() and getStaticProps() are typically used for pre-rendering, while useEffect() is a React hook and not directly related to server-side rendering.

The strategy that prioritizes network requests over cache, but falls back to cache if the network is unavailable, is called ________.

  • Cache-First
  • Cache-Only
  • Network-First
  • Network-Only
The strategy that prioritizes network requests over cache but falls back to cache if the network is unavailable is called "Cache-First." This approach optimizes performance by serving cached content when possible while ensuring the latest data is fetched when the network is available, making it a common strategy for progressive web applications (PWAs) and service workers.

You're tasked with building a PWA for a ticket booking platform. The requirement is to ensure users can view their booked tickets even when offline. How would you implement this functionality?

  • a) Use local storage to store ticket data on the user's device.
  • b) Implement Service Workers: Use them to intercept network requests and cache ticket data.
  • c) Require users to download a PDF of their booked tickets for offline access.
  • d) Use cookies to store ticket data in the user's browser.
To ensure users can view their booked tickets offline in a PWA, the best approach is to implement Service Workers (option b). Service Workers can intercept network requests, cache ticket data, and serve it to users when they are offline. Local storage (option a) is limited in capacity and may not provide a seamless offline experience. Downloading PDFs (option c) is not user-friendly, and cookies (option d) are not suitable for storing large amounts of data offline.

What is the primary benefit of using the Context API in React?

  • Global state management.
  • Improved performance.
  • Reduced component re-rendering.
  • Simplified component hierarchy.
The primary benefit of using the Context API in React is global state management. Context API allows you to create a global state that can be accessed by multiple components, eliminating the need to pass props through multiple levels of components. While it may help reduce re-renders in some cases, its primary advantage is its ability to manage global state.

You're building a modal dialog system for a web application. Which advanced React pattern would be best suited to render the modal outside the app's main DOM hierarchy, but control it from within a component?

  • Context API
  • Portals
  • Redux
  • Render Props
In this scenario, the most suitable advanced React pattern would be Portals. Portals allow you to render a component outside the normal DOM hierarchy while maintaining control over it from within a component. This is especially useful for scenarios like modals, tooltips, or popovers that need to be rendered outside the parent DOM tree. Context API, Render Props, and Redux are useful in different contexts but not specifically designed for this scenario.

A colleague is using a type any for all props in a React component. What potential issue might arise from this practice in TypeScript?

  • Enhanced Performance
  • Improved Code Readability
  • Simplified Debugging
  • Type Safety Issues
Using type any for all props in a React component can lead to potential Type Safety Issues in TypeScript. This means that TypeScript won't be able to provide compile-time checks and assistance for type-related errors, increasing the risk of runtime errors. While it may make code more flexible, it sacrifices type safety, which is a significant disadvantage in TypeScript.

What is JSX in React?

  • A JavaScript XML-like syntax
  • A database query language
  • A style sheet language
  • JavaScript eXtension
JSX stands for JavaScript XML. It allows developers to write HTML-like code within their JavaScript code. React then converts these JSX expressions into actual JavaScript objects before rendering them in the DOM.

What is the primary purpose of the Context API in React?

  • Handling HTTP requests.
  • Managing global application state.
  • Rendering UI components.
  • Styling React components.
The primary purpose of the Context API in React is to manage global application state. It allows you to share data, such as user authentication status or theme preferences, across components without prop-drilling. While rendering UI components is a core function of React, the Context API specifically addresses the challenge of managing shared state.