사용자 지정 관리보기 페이지에서 실험 중이며 동작에 대해 하나의 질문이 있습니다.React-router 리디렉션이 Meteorjs의 구성 요소를 반복합니다.
순간에 현재의 논리는 다음과 같습니다 인증 및 시도하지에 사용자가 /관리자 패널 또는 그 아이 그/그녀가 /& 로그인 페이지로 리디렉션됩니다를 방문
- 경우 .
- 하면 로그인과에 사용자가 방문 /& (로그인 페이지) 그/그녀가 /관리자 패널로 리디렉션됩니다 문제는 사용자에 lodded 및 에 있습니다
- 먼저 /& 페이지가로드를 사용자가 켜져 또는 /관리자 패널/다시로드 후 child_component가 그/그녀가 /관리자 패널에있을 것입니다 및 이동해야 할 경우
- 그런 다음 /&는 /관리자 패널 로 사용자를 리디렉션 다시
당신이 무엇을 현재의 행동의 원인과 페이지에 사용자 숙박을 할 수있는 방법이 있다면 다시로드가 시작되었다 상수 리디렉션을 피할 수 설명해 주시겠습니까 /child_component에?
로그인 페이지 /&
import React, { Component } from 'react';
import { Link, browserHistory } from 'react-router';
import { Tracker } from 'meteor/tracker'
class Backdoor extends Component {
onSubmit(event) {
event.preventDefault();
// Collecting user input
const self = this;
const email = $(event.target).find('[name=email]').val();
const password = $(event.target).find('[name=password]').val();
Meteor.loginWithPassword(email, password, function (err) {
browserHistory.push('admin-panel');
});
}
componentWillMount(){
Tracker.autorun(() => {
if (Meteor.user()) {
browserHistory.push('/admin-panel')
} else if(!Meteor.user()) {
browserHistory.push('/&')
}
})
}
render() {
return (
// Login form
);
}
}
export default Backdoor;
반작용 라우터 경로 '
const routes = (
<Router history={browserHistory}>
<Route path='/' component={App}>
<Router path='about' component={About} />
</Route>
<Route path='&' component={Backdoor} />
<Route path='admin' component={AdminPanel}>
<Router path='/admin/admin_component' component={AdminChild} />
</Route>
</Router>
이 사례에 헌신 해 주셔서 감사합니다. 많은 것을 감사드립니다. 나는 내 환경 내에서 당신의 제안을 상기에서 그리고 첫 번째 경우에는 나를 위해 일한 테스트를했지만, 나는 각 경로에서 사용자 인증을 제어하는 데 어려움을 겪고 있었다. 그리고 아마도 내가 그것을 우울하게 표현할 수있는 더 쉬운 방법을 생각 해냈다. – volna