2014-07-06 3 views
0

Ember CLI를 사용하고 Simple Auth Addon을 성공적으로 통합했습니다. 불행히도 현재 프로젝트의 ApplicationRoute에서 sessionAuthenticationFailed 작업을 수행 할 수없는 문제가 발생했습니다. 이미 Ember Simple Auth의 브라우저 화 된 버전으로이 작업을 성공적으로 수행했지만 현재 Ember CLI에 Addon을 사용하고 싶습니다. 순간 내 ApplicationRoute는 커피 스크립트에 다음과 같습니다 : 나는 또한 ApplicationRouteMixin을 재개하고 또한 작동하지 않았다 기능에 debugger을 설정하려고작업이 Ember CLI에 의해 트리거되지 않음 단순한 ApplicationRouteMixin

`import Ember from 'ember'` 
`import ApplicationRouteMixin from 'simple-auth/mixins/application-route-mixin'` 
`import Session from 'simple-auth/session'` 

ApplicationRoute = Ember.Route.extend ApplicationRouteMixin, 
    actions: 
    sessionAuthenticationFailed: (error) -> 
     debugger 

`export default ApplicationRoute` 

. Ember Simple Auth의 소스 코드를 따라갈 수있는 한 Sessionauthenticate 함수에서 _this.trigger('sessionAuthenticationFailed', error)을 호출하여 이벤트를 트리거합니다. 나는 또한 현재 작동하지 않는 작업 버전과 트리거를 호출 한 후 코드를 단계별로 실행하여 객체를 수신하는 sendEvent 함수로 끝납니다.이 경우에는 Ember Simple Auth Session, eventName, 매개 변수 및 작업 아무것도이라고 내 경우 meta.listeners[eventName]에서

var meta = obj[META_KEY]; 
actions = meta && meta.listeners && meta.listeners[eventName]; 

sessionAuthenticationFailed 이벤트 때문에 아무것도 청취자가없는 의미 undefined입니다 : 여기에서 흥미로운 것은 청취자에 대한 몇 가지 메타 데이터가 코드의이 부분에 세션에서 읽도록입니다 그리고 나는 나의 행동으로 그 사건을 잡지 못하고 끝내고있다.

이제 큰 문제는 물론이 이벤트의 리스너를 등록하지 않는 이유입니다. 이미 Ember CLI Simple Auth Addon을 사용중인 다른 사람이 sessionAuthenticationFailed 이벤트를 성공적으로 연결 했습니까? 그렇다면 도움을 주시면 감사하겠습니다!

건배, 데이브! 나는 beforeModel 후크가 확장 ApplicationRoute에 사용하는 경우 나뿐만 아니라) this._super에 의해 부모의 beforeModel 기능 (전화를 가지고 본 소스의 의견을 읽어

편집 . 이 문제를 해결하기위한 한 걸음 더 나아간 것 같습니다.

답변

1

좋아,이 문제를 해결했습니다. 그래서 번역을로드하기 위해 ApplicationRoutebeforeModel(transition) 후크를 구현했지만 this._super(transition)으로 부모 함수를 호출하지 않았습니다. 이것은 내가 설명한 것과 동일한 문제가있는 경우 작동하지 않는 이유 중 하나 일 수 있습니다!

+0

David 대단히 감사합니다! 나는 몇 시간 동안 그것에 고심하고 있었다! – Pedro