JSPM

  • Created
  • Published
  • Downloads 39800
  • Score
    100M100P100Q155190F
  • License MIT

A replacement component for the react-router `<Prompt/>`. Allows for more flexible dialogs.

Package Exports

  • react-router-navigation-prompt

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (react-router-navigation-prompt) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

React Router

Table of Contents

Overview

Example Usage

Overview

A replacement component for the react-router <Prompt/>. Allows for more flexible dialogs.

Note: When NavigationPrompt.props.when is truthy, then confirmation is requested when navigating away. Usually, browsers handle the UX themselves, leading to vanilla alert boxes. Also, many browsers require users to interact with your site before confirming navigation away.

Motivation: https://github.com/ReactTraining/react-router/issues/4635

Adapted from: https://gist.github.com/bummzack/a586533607ece482475e0c211790dd50

Example Usage

<NavigationPrompt when={this.state.shouldConfirmNavigation}>
  {({onConfirm, onCancel}) => (
    <Modal show={true}>
      <div>
        <p>Do you really want to leave?</p>
        <button onClick={onCancel}>Cancel</button>
        <button onClick={onConfirm}>Ok</button>
      </div>
    </Modal>
  )}
</NavigationPrompt>
<NavigationPrompt when={this.state.shouldConfirmNavigation}>
  {({onConfirm, onCancel}) => (
    <div>
      <p>Do you really want to leave?</p>
      <button onClick={onCancel}>Cancel</button>
      <button onClick={onConfirm}>Ok</button>
    </div>
  )}
</NavigationPrompt>