可以直接从react-router-dom这个模块中取出这几个有用的组件。
Link: 这是个可以跳转到别的地址的类似于a标签的组件。它有这么几个属性
to: 可以接受字符串或者对象。字符串直接传入要跳转的地址就行了。对象应用于,比如你点击的这个链接将要跳转的页面需要展示此链接对应的内容,又比如这是个支付跳转,需要把商品的价格等信息传递过去。可以传{pathname:'/course',search:'?sort=name',state: {price:18}}。state这个属性可以在跳转后的地址的对应组件的this.props.location.state中取到。这是自定义的属性。
replace: 可以接受一个bool值。为 true 时,点击链接后将使用新地址替换掉上一次访问的地址,什么意思呢,比如:你依次访问 '/one' '/two' '/three' ’/four' 这四个地址,如果回退,将依次回退至 '/three' '/two' '/one' ,这符合我们的预期,假如我们把链接 '/three' 中的 replace 设为 true 时。依次点击 one two three four 然后再回退会发生什么呢?会依次退至 '/three' '/one'!
Prompt
当用户离开当前页面前做出一些提示。
message: string
当用户离开当前页面时,设置的提示信息。
message: func
当用户离开当前页面时,设置的回掉函数
(`Are you sue you want to go to${location.pathname}?`)} />
when: bool
通过设置一定条件要决定是否启用 Prompt