是否有规范方法在Meteor中填充选择控件并将控件设置为基础数据中的现有值? 我已经找到了一种方法来填充选择控件中的“选项”。我仍然需要创建选项,以便选择正确的选项以匹配现有数据。
似乎大多数流星的例子都想象出相当简单的形式。我必须处理业务数据。我可能有一个记录,其中有子记录...说联系电子邮件....所以联系电子邮件的每一行都有一个选择“电子邮件类型”。想象一下,有2个联系电子邮件记录......当我显示它们时,我需要为正确的选项设置“选定”值。但我发现这个使用会话变量的唯一例子???存储选定的值...因此可以在布局选择的模板中引用它们。
使用#with似乎只有一个级别...也就是说,我不能#with已经存在#with
答案 0 :(得分:0)
所选元素需要具有以下属性:
selected="selected"
(或某些变体 - 刚刚选择的工作正常)
要有条件地包含它,请创建一个模板助手(例如,名为isSelected),它根据您的逻辑返回true / false。你的选项html循环如下所示:
<option value = "{{value}}" {{#if isSelected}} selected="selected" {{/if}} >
{{description}}</option>
作为一种改进,而不是帮助程序,您可以向每条记录添加名为isSelected的true / false字段。模板不关心它是字段还是帮助者。
对于“使用#with似乎只有一个级别......也就是说,我不能#with已经存在的#with”
我已经使用对外部的引用来修复内部对象,因此两者都可以在嵌套时访问。例如,要将一个集合中的任何/全部与文档相关联,我准备数据:
Handlebars.registerHelper 'allSureties', (document) ->
included = document.sureties or [] # the array that tracks ids for surety recs that this doc has
_.map _sureties, (sure) ->
sure.owner = document
sure.isContained = sure._id in included
sure.vents = "agent:sureties:#{document._id}:#{sure._id}" # see you can get both IDs this way
sure
然后我的模板以这种方式使用(注意你可以访问owner._id):
{{#each allSureties this}}
{{switch value=value
fname=nickname
group="sureties"
on=nickname
off=nickname
object=owner._id
vents=vents
_id=_id }}
{{/each}}
希望这会有所帮助。