# react-router6-prompt **Repository Path**: wkjgit/react-router6-prompt ## Basic Information - **Project Name**: react-router6-prompt - **Description**: 解决 react-router6 中无法实现Prompt。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 1 - **Created**: 2022-03-20 - **Last Updated**: 2024-11-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # react-router6-prompt > 由于目前react-router6中仍未支持 Prompt,但是在有些时候不得不使用此功能,所以此模块,仅实现此功能仅此而已。 ## 安装 ```bash npm install react-router6-prompt ``` ## 使用 首先导入Router,包括 `BrowserRouter` 和 `HashRouter` 两种模式。 ```tsx import React from 'react'; import ReactDOM from 'react-dom'; import App from './App'; // 使用HashRouter,同样的方法导入即可 import {BrowserRouter} from 'react-router-prompt'; ReactDOM.render( , document.getElementById('root') ) ``` 在需要使用Prompt功能的页面内添加 ```tsx import React from 'react'; import {browserHistory, Prompt} from 'react-router6-prompt'; // 如果使用的是HashRouter,这里引入hashHistory即可。 const Page = () => { return ( <> { return true; }}> ); } export default Page; ``` ## 关于Prompt组件 在使用 `Prompt` 组件时,该组件有三个`prop`参数: * `history` ,支持 `browserHistory` 和`hashHistory`。 * `when` ,boolean,设置是否开启页面切换或卸载效验。 * `message` ,`string` 、 `() => boolean` 、`() => Promise` 支持三种类型,使用 `string` 作为参数则使用浏览器默认的 `confirm` 作为页面切换或卸载时的确认控件,使用后面两种则可以自定义切换或卸载时的控件控件。