我正在使用meteor-famous-views将famo.us集成到我的流星应用程序中。我得到了这个简单的模板。
{{#ContainerSurface size="[undefined,250]" translate="[0,172]" class="languageSelectItems"}}
{{#Scrollview size="[undefined,true]"}}
{{#famousEach languages}}
{{>Surface template="languageSelectItem" size="[undefined,50]" class="languageSelectItem"}}
{{/famousEach}}
{{/Scrollview}}
{{/ContainerSurface}}
这个相应的Javascript事件处理函数。
Template.languageSelectItem.famousEvents({
'click': function(e, fview){
var lang = Blaze.getData(fview.blazeView);
Session.set('selectedLanguage', lang);
$('.languageSelectItems').hide();
}
});
我的问题很简单,如何访问数据上下文?
Blaze.getData(fview.blazeView);
建议哪个是正确的解决方案:
https://github.com/gadicc/meteor-famous-views/issues/100
此调用返回对着名对象的引用,例如表面等,但我需要相关的“语言”对象。
我正在使用meteor-famous-views版本0.1.15。
编辑:使用fview-lab.meteor.com
演示此组件答案 0 :(得分:1)
找到了一个可行的解决方案,但不确定这是否是正确的方法。
技巧是在FamousEach循环中Surface的数据参数。
{{>Surface template="languageSelectItem"
size="[undefined,50]"
class="languageSelectItem"
data=this}} <--- add a reference
我改编了fview-lab演示: