模板的資料上下文
無論何時呼叫模板,都會從呼叫者隱式獲取模板的預設資料上下文,例如,childTemplate 獲取 parentTemplate 的資料上下文,即呼叫者模板
<template name="parentTemplate">
{{#with someHelperGettingDataForParentTemplate}}
<h1>My name is {{firstname}} {{lastname}}</h1>
//some stuffs here
{{> childTemplate}}
{{/with}}
</template>
在上面的情況中,childTemplate 自動獲取幫助器為父模板提取的任何資料。例如,可以從 childTemplate 訪問{{firstname}}和{{lastname}},如下所示。
<template name="childTemplate">
<h2>My name is also {{firstname}} {{lastname}}</h2>
</template>
我們甚至可以通過將引數傳遞給模板來顯式定義 childTemplate 的資料上下文,如下例所示。
<template name="parentTemplate">
{{#with someHelperGettingDataForParentTemplate}}
<h1>My name is {{firstname}} {{lastname}}</h1>
//some stuffs here
{{> childTemplate childData=someHeplerReturningDataForChild}}
{{/with}}
</template>
假設幫助者 someHelperReturningDataForChild 返回像{profession:Meteor Developer
,hobby:stackoverflowing
}這樣的物件,這個特定物件將是 childTemplate 的顯式資料上下文。現在在兒童模板中我們可以做類似的事情
<template name="childTemplate">
<h2>My profession is {{profession}}</h2>
<h3>My hobby is {{hobby}}</h3>
</template>