우선, 나는 Meteor 자체를 사용하지 않고 Angular-Meteor를 사용하므로 원리는 동일합니다. 내가 할 필요가있는 것은 자원이 유효 할 때 helper
함수에서 유효성을 검사하고 결과에 따라 결정을 내리는 것입니다.meteor 도우미에서 쿼리 결과의 유효성을 검사하고 404로 리디렉션하는 방법은 무엇입니까?
나는 클라이언트 측에서 find
과 findOne
콜렉션의 기능이 동기식이라고 생각했지만, 그렇지 않거나 잘못된 방식으로 작업하고있는 것으로 보입니다.
this.helpers({
post() {
let _post = Posts.findOne({
_id: this.postId
});
if(typeof _post == 'undefined')
return this.$state.go('404');
return _post;
}
});
this.postId
가 URL PARAMS에서 온다 :
나는 다음과 같은 코드가 있습니다. 앱을 탐색 할 때 모든 작업이 수행됩니다. 그러나 페이지를 새로 고치면 this.postId
이 정의되어 있지만 Posts.find()
은 undefined
을 반환하며 분명히 404 페이지로 이동합니다.
¿이 시나리오에서 어떻게 해결할 수 있습니까?
정답입니다. 도우미 코드를 handle.ready()에 래핑하면 항상 데이터가 준비되었는지 확인할 수 있습니다. 고맙습니다. – Brian