Meteor에서 마이그레이션하는 동안 0.8.3 & IR 0.8.2에서 Meteor 0.9.3.1 & IR 1.0.0-pre3 I ' RouteControllers에 문제가 발생했습니다. RouteControllers를 [email protected] 서버 코드에 정의해야합니까?
나는이 프로젝트의 '/ 모두'폴더에 다음 JS :Router.route('scene.index', {
path: '/',
controller: 'SceneController'
});
그리고 SceneController JS '/ 클라이언트 트리에서 :
SceneController = RouteController.extend({
template: 'SceneView'
...
});
액세스를 시도 클라이언트로부터의 경로를 통해 다음과 같은 오류가 발생합니다 :
Error: RouteController 'SceneController' is not defined.
at resolve (packages/iron:router/lib/route.js:94)
at Function.Route.findControllerConstructor (packages/iron:router/lib/route.js:116)
at Function.Route.createController (packages/iron:router/lib/route.js:134)
at Function.Router.createController (packages/iron:router/lib/router.js:181)
at Function.Router.dispatch (packages/iron:router/lib/router_server.js:66)
at Object.router (packages/iron:router/lib/router.js:15)
at next (/Users/pward/.meteor/packages/webapp/.1.1.2.1m8ln9s++os+web.browser+web.cordova/npm/node_modules/connect/lib/proto.js:190:15)
at Function.app.handle (/Users/pward/.meteor/packages/webapp/.1.1.2.1m8ln9s++os+web.browser+web.cordova/npm/node_modules/connect/lib/proto.js:198:3)
at Object.fn [as handle] (/Users/pward/.meteor/packages/webapp/.1.1.2.1m8ln9s++os+web.browser+web.cordova/npm/node_modules/connect/lib/proto.js:74:14)
at next (/Users/pward/.meteor/packages/webapp/.1.1.2.1m8ln9s++os+web.browser+web.cordova/npm/node_modules/connect/lib/proto.js:190:15)
노드와 약간의 시간이 지난 후 -inspector, 나는 IR이 클라이언트 쪽 RouteControllers를 서버에 표시해야한다고 결론을 내 렸습니다.
내 경로 컨트롤러가 현재 세션 변수를 설정 했으므로 Meteor.isClient를 뿌리지 않는 것이 좋습니다. 이것은 IR 버그 또는 알려진 변경 사항입니까?
빠른 응답 주셔서 감사합니다 :
서버 측, 그것은 유성 응용 프로그램을 제공하는 대신 알 수없는 경로에 404를 보내 클라이언트 경로에 대해 아는 것이 중요합니다, 여기에 공식 가이드에서 이에 대한 견적입니다 이름/경로 스와핑에 대한 수정 – pward123
나는이 버그 또는 변경 사항인지 계속 알고 싶기 때문에이 대답을 수락하지 않습니다. EventedMind의 "em"스캐 폴딩 도구가 클라이언트/컨트롤러 폴더를 생성한다는 것을 감안할 때, IR이 지원하지 않는다는 것이 다소 이상하게 보입니다. – pward123
내 답변을 편집했습니다. 짧게 말해서, 버그가 아니라 크게 달라졌습니다.em 스캐 폴딩 도구는 아마도 최신 '철 : 라우터'뒤에 약간있을 것입니까? – saimeunt