我可能丟失的歷史什麼的,但是當我刷新在子路徑的頁面,如/login
或任何其他途徑獲得:陣營路由器V4頁面刷新不工作
403禁止
代碼:存取遭拒 消息:拒絕訪問 的requestId:075CAA73BDC6F1B9 主機ID:O1n36xVCoeu/aLaSMrtCkAFZruWk5ZcO4RIrznEhvUxdu8lFEhL0XcKw2L4W4J7VYYet + HDv8tc =
記住路線做工精細,只要我不刷新。
因此,可以說,我去/
(主頁)。就可以了,我有一個超鏈接映射到路徑/login
在我的反應路由器的路由。我點擊超鏈接,它工作正常,根據我的反應路由器路線呈現/ login控制反應。 只有當我刷新任何頁面時,我纔會看到上面的錯誤。
此外,當我同步我鬥我把公共讀就這麼不知道爲什麼我得到這個權限錯誤:
aws s3 sync --acl public-read build s3://${bkt}
這裏的一些線路和組件的例子:
<Provider store={store}>
<Layout>
<Switch>
<Route component={Home} exact path='/' />
<ProtectedRoute component={
DashboardContainer} path='/dashboard' />
<Route component={LoginContainer} path='/login' />
<Route component={NotFound} path='*' />
</Switch>
</Layout>
</Provider>
LoginContainer
import { connect } from 'react-redux'
import React, { Component } from 'react'
const _ = require('lodash')
...
import Login from '../components/auth/Login/Login'
class LoginContainer extends Component {
constructor(props) {
super(props)
this.handleEmailInput = this.handleEmailInput.bind(this)
... rest of the handlers
}
async handleLoginPressed(e) {
e.preventDefault()
this.validateForm()
await this.props.authenticate(this.state.email, this.state.password)
if(this.props.isAuthenticated) {
this.props.history.push('/dashboard')
return
}
... more code
render(){
return(
<div>
<Login
login={this.handleLoginPressed}
/>
</div>
)
}
}
const mapStateToProps = state => ({
token: state.auth.token
})
export const mapDispatchToProps = {
authenticate: AuthAsyncActions.authenticate
}
export { Login }
export default connect(mapStateToProps, mapDispatchToProps)(LoginContainer)
現在,我已經離開了一堆重複的代碼,這基本上顯示在這裏我唯一擁有的路由,如果他們成功登錄,他們重定向到/dashboard
。我的問題不是,重定向工作正常。這是每當我在刷新任何頁我在,就不會再次重新路由。
如何在地獄這樣做得到downvoted – PositiveGuy