使用 jsRender 将值从外部传递给内部

Passing a value from outer for to an inner for using jsRender

如果我执行以下操作:

{{for Items}}
{{>Id}}
   {{for messages}}
       <div class="myclass">
          {{include tmpl="#myTemplate" /}}
       </div>
   {{/for}}
{{/for}}

然后在我的项目顶部我正确地看到了 Id

的值

如果我现在删除 {{>Id}},因为我已经证明这是我想要的

我现在想将它添加到我的 div 中,这样它就变成了:

<div class="myclass" productid="{{:Id}}">

然而,Id 值没有根据我的 productid 属性设置,我已经尝试过 {{:Items.Id}}、{{:parent.Id}} 以及其他一些方法,但都没有有用

您可以通过多种方式到达 "parent data"。参见 https://www.jsviews.com/#parentdata。例如你可以做

{{for messages ~parentId=Id}}
   <div class="myclass" productid="{{:~parentId}}">
      {{include tmpl="#myTemplate" /}}
   </div>
{{/for}}

或者您可以使用 {{:#parent.parent.data.Id}} 通过 {{for messages}} 的 'array' 视图逐步进入 {{for Items}} 的父 'item' 视图。 (参见 https://www.jsviews.com/#views