2014-03-31 2 views
4

Meteor 0.8.0에서 Iron Router 0.7.0과 오류가 발생합니다. 불꽃 레이아웃의 layout.js에서 UI.Compenent.lookup 함수 내 잡히지 않은 오류 : 렌더링 된 구성 요소 트리에서 레이아웃 구성 요소를 찾을 수 없습니다.

, 다음과 같은 오류가 트리거됩니다 :

Uncaught Error: Couldn't find a Layout component in the rendered component tree

그것은이 오류의 원인이되고 있기 때문에 무엇을 작동하지 않습니다 정확히 알고 어렵다 그것의. 어떤 아이디어?

미리 감사드립니다.

+1

수율이 올바른지 확인하십시오. '{{yield 'title'}}'대신'{{yield region = 'title'}}'을 사용해야합니다. –

+0

라우터의 렌더링을 무시하거나 레이아웃 템플릿을 직접 사용하고 있습니까? – cmather

+0

제안 해 주셔서 감사합니다. 명명 된 수익률이 없으므로 다른 모든 템플릿의 이름이 올바르게 지정되었는지 확인했습니다. 결국, 내 main.html이 태그 안에 {{> yield}}를 필요로하지 않는다는 것을 발견했습니다. 이전 버전에서이 오류가 발생하지 않았거나 오류가 발생하지 않았습니까? – CDoe

답변

9

방금 ​​동일한 오류가 발생했습니다. 이는 내 레이아웃 템플릿을 <body> 내에 포함하고 layoutTemplate 옵션으로 지정하여 발생했습니다. 이 문제를 해결하기 위해 <body>에서 포함을 삭제했습니다.

여기 내 코드의 전후입니다.

example.html (전) (전)

<head> 
    <title>example</title> 
</head> 

<body> 
    {{>layout}} 
</body> 

<template name="layout"> 
    <div>{{>yield}}</div> 
</template> 

example.js (후)

<head> 
    <title>example</title> 
</head> 

<body> 
</body> 

<template name="layout"> 
    <div>{{>yield}}</div> 
</template> 

example.js (이후

if(Meteor.isClient) { 

Router.configure({ 
    layoutTemplate: 'layout' 
}); 

} 

example.html - 이전과 동일)