Meteor:访问子模板中的反应dict变量
Meteor: Access reactive dict variable in child template
我需要在子模板中检查在父模板中创建的反应dict变量的值。
<template name="parent">
{{ > child }}
</template>
<template name="child">
{{#if something}}
checked
{{/if}}
</template>
这就是我将反应dict变量初始化为父模板的方式:
Template.parent.onCreated(function() {
this.blabla = new ReactiveDict();
});
因此,对于父模板,这个助手正在工作:
Template.parent.helpers({
anything: function(type) { return (Template.instance().blabla.get('foo') === 'bar') ? true : false; }
});
但这对孩子不起作用:
Template.child.helpers({
something: function() { return (Template.instance().blabla.get('foo') === 'bar') ? true : false; }
});
那么,我如何检查子助手中变量的值呢?
这个问题的核心是关于如何找到模板的父实例。我建议阅读这里的所有答案。
我将以Sacha提出的想法为基础,举一个例子:
html
<template name="parent">
{{ > child parentHelper=parentHelper}}
</template>
<template name="child">
{{#if parentHelper}}
<h1>pass</h1>
{{else}}
<h1>fail</h1>
{{/if}}
</template>
js
Template.parent.onCreated(function() {
this.dict = new ReactiveDict();
this.dict.set('foo', 'bar');
});
Template.parent.helpers({
parentHelper: function() {
return Template.instance().dict.equals('foo', 'bar');
}
});
如果这个确切的模式在你的代码中不起作用,你可以尝试上面链接问题中的其他模式。
相关文章:
- 将函数的上下文应用于javascript变量
- 无法导出函数expressjs/requestjs中的变量
- 函数参数中的数据与指定变量之间的任何性能差异
- 将PHP变量传递给jQuery时遇到问题
- 如何通过ajax刷新JSF填充的javascript变量
- 参数变量出现ngTable指令问题
- 通过javascript重定向html传递php变量
- 将jsp文件下拉列表中的选定项分配给一个java变量(比如String selection)
- 全局变量和全局对象的属性之间有什么区别吗
- 如何在Bootstrap Modal中为动态点击生成的变量设置jade属性
- 值对象在某个变量发生更改后发生更改
- Javascript变量赋值|
- AngularJS-在JSON选择器中使用变量名
- Javascript计数器变量未显示正确的值
- delete关键字在全局变量上的不同行为
- 如何在php变量中嵌入JQuery代码
- ReactJS映射:如何仅在url变量不为空时呈现html链接
- 在javascript函数中设置全局变量
- Meteor:访问子模板中的反应dict变量
- 通过dict数据类型创建TAB特定变量