우선 먼저 유성과 함께 완전한 멍청한 마음으로 시작하겠습니다. 이제 문제가 시작될 때까지 ...Meteor.js - 렌더링하기 전에 로그인 상태를 확인하십시오.
두 페이지, '/'에 스플래시 페이지, '/ home'에 홈 페이지가 있습니다. 라우팅에 철기기를 사용하고 있습니다. 지금 내가 스플래시 페이지에 로그인하지 않았고 로그인하면 홈 페이지로 리디렉션됩니다. 이제 브라우저를 닫았다가 다시 열었다가 '/'가 몇 초 동안로드되면 실제로 로그인 한 상태에서 '/ home'으로 리디렉션됩니다.
내 질문은 내가 이미 로그인되어있을 때 '/'에이 초기 표시를 제거하는 방법입니다. 나는 로그인하지 않은 사람들에게 그 페이지를 보여주고 싶습니다. 여기에 라우터에있는 코드가 있습니다 :
Router.configure({layoutTemplate: 'mainLayout'});
Router.map(function() {
this.route('splash', {path: '/'});
this.route('home');
});
var mustBeSignedIn = function(pause) {
if (!(Meteor.user() || Meteor.loggingIn())) {
Router.go('splash');
pause();
}
};
var goToDashboard = function(pause) {
if (Meteor.user()) {
Router.go('home');
pause();
}
};
Router.onBeforeAction(mustBeSignedIn, {except: ['splash']});
Router.onBeforeAction(goToDashboard, {only: ['splash']});
희망이 있습니다.
업 그레 이드 meteor> 1.0 이후 this.next()를 추가해야 함 more here http://stackoverflow.com/questions/26629835/meteor-v-1-0-and-ironrouter –