Subscribe, then unsubscribe in React

React interview exercise on Effects & refs, difficulty 2 of 3. Solve it in the editor beside a worked example; the tests run the moment you do.

Write OnlineStatus with a `source` prop ({ get(): boolean; subscribe(listener): unsubscribe }): show <span className="status">Online</span> or Offline for the current value, follow every change, and unsubscribe when the component unmounts. If the source prop changes, subscribe to the new one.

Each exercise pairs a worked example with a twin problem to solve in a real editor; the tests run the moment you do. Progress is saved in your browser, and in your account if you sign in.

More Effects & refs in React

All React exercises · Other languages and frameworks