0
0
React Nativemobile~20 mins

Why state and props drive component behavior in React Native - Challenge Your Understanding

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
State and Props Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
ui_behavior
intermediate
2:00remaining
What happens when a React Native component's state changes?
Consider a React Native functional component using useState. What is the immediate effect on the UI when the state is updated?
React Native
import React, { useState } from 'react';
import { Text, Button, View } from 'react-native';

export default function Counter() {
  const [count, setCount] = useState(0);
  return (
    <View>
      <Text>{count}</Text>
      <Button title="Add" onPress={() => setCount(count + 1)} />
    </View>
  );
}
AThe UI re-renders showing the updated count value.
BThe UI freezes until the app restarts.
CNothing changes on the screen until the user navigates away and back.
DThe app crashes due to state mutation.
Attempts:
2 left
💡 Hint
Think about what React Native does when state changes inside a component.
🧠 Conceptual
intermediate
2:00remaining
How do props affect a React Native component?
If a parent component passes different props to a child component, what happens to the child component?
React Native
function Greeting({ name }) {
  return <Text>Hello, {name}!</Text>;
}

// Parent component changes the name prop from 'Alice' to 'Bob'
AThe child component ignores the new props and keeps the old name.
BThe child component re-renders with the new name displayed.
CThe child component crashes due to prop change.
DThe child component unmounts and does not reappear.
Attempts:
2 left
💡 Hint
Props are how parents tell children what to show.
lifecycle
advanced
2:00remaining
What happens if you update state directly instead of using setState in React Native?
Given a state variable declared with useState, what is the effect of modifying the state variable directly instead of calling the setter function?
React Native
const [count, setCount] = useState(0);

// Incorrect update:
// count = count + 1; // This line would cause an error because count is a constant

// Correct update:
setCount(count + 1);
AThe UI does not update because React does not detect the change.
BThe UI updates immediately as expected.
CReact throws a runtime error for direct state mutation.
DThe app reloads automatically.
Attempts:
2 left
💡 Hint
React only re-renders when you use the setter function.
navigation
advanced
2:00remaining
How do props affect navigation between screens in React Native?
When navigating to a new screen and passing props, how does the receiving screen access those props?
React Native
navigation.navigate('Profile', { userId: 42 });

// In Profile screen component
function Profile({ route }) {
  const { userId } = route.params;
  return <Text>User ID: {userId}</Text>;
}
AProps must be stored in global state to be accessed.
BProps are accessed via this.props directly.
CProps are not accessible on the new screen.
DProps are accessed via route.params inside the screen component.
Attempts:
2 left
💡 Hint
React Navigation passes props through route parameters.
🔧 Debug
expert
2:00remaining
Why does this React Native component not update the UI when props change?
Look at this component. It receives a prop but does not update the displayed value when the prop changes. Why?
React Native
function Display({ value }) {
  const [displayValue, setDisplayValue] = React.useState(value);
  return <Text>{displayValue}</Text>;
}

// Parent changes value prop from 'Hello' to 'World'
AThe component updates automatically without extra code.
BThe component should use useEffect to update state when props change.
CThe component sets state only once on mount and ignores prop changes.
DThe component crashes because state and props conflict.
Attempts:
2 left
💡 Hint
State initialized from props does not update automatically.