Javascript 如何在Meteor中对具有输入单元格表的表单进行反应绑定?

Javascript 如何在Meteor中对具有输入单元格表的表单进行反应绑定?,javascript,meteor,handlebars.js,Javascript,Meteor,Handlebars.js,我试图创建一个web应用程序来处理任意大小的二维矩形数字表。每个表都将是一个文档(存储在集合中,并由用户彼此共享)。最后,我想将其扩展到任意数量的维度,但2D已经给我带来了麻烦。目前我的数据存储为 {dimensions: [2,3], data: [2, 3, 5, 7, 11, 13]} 但我认为将UI代码编写为数组的数组会更容易 [[2, 3, 5], [7, 11, 13]] 对我来说,在其他地方进行这种转变很容易 我一直在致力于一个玩具实现,在不增加集合和用户帐户复杂性的情况下,将

我试图创建一个web应用程序来处理任意大小的二维矩形数字表。每个表都将是一个文档(存储在集合中,并由用户彼此共享)。最后,我想将其扩展到任意数量的维度,但2D已经给我带来了麻烦。目前我的数据存储为

{dimensions: [2,3],
data: [2, 3, 5, 7, 11, 13]}
但我认为将UI代码编写为数组的数组会更容易

[[2, 3, 5],
[7, 11, 13]]
对我来说,在其他地方进行这种转变很容易

我一直在致力于一个玩具实现,在不增加集合和用户帐户复杂性的情况下,将我的头脑集中在反应部分上。硬编码的2x3版本是at,并且在关键位所在的位置有双
{{{each}}
循环的版本

<table>
  <tbody>
    {{#each rows}}
    <tr>
      {{#each cols}}
      <td><input class="cell" name="{{../row}},{{col}}" type="text" value="{{stuff ../row col}}"/></td>
      {{/each}}
    </tr>
    {{/each}}
  </tbody>
</table>
这似乎是可行的,但我觉得我在滥用这些工具。有人能为我提供一些指导吗?

我做了一些类似的(类似于《流星移动版》中的一个spreatsheet)

我记得Meteor中的代码:在本例中使用会话会由于从/到JSON的转换而产生开销

我建议:

通过创建一个对象来使用Deps处理两个dim阵列,从而使阵列具有反应性(具有一个接口:add/del row/col、get/set cell) 文档:-如果适合项目,也可以使用集合

我在当前模板系统中遇到的一个问题是,必须将内容拆分为子模板。您的代码所做的是在反应性数据无效时进行完全的重新渲染-如果一个单元格更改整个内容,则重新渲染。 尝试将其拆分为:

{{each row}}
  {{>viewRow}}
{{/each}}

<template name="viewRow">
  <tr>
  {{each cell}}
    {{>viewCell}}
  {{/each}}
  </tr>
</template>

...
{{每行}
{{>viewRow}
{{/每个}}
{{每个单元格}
{{>viewCell}
{{/每个}}
...
我为Meteor中的debuggin模板制作了一个片段: 这将总结模板呈现提供一些统计信息,它帮助med以一种只重新呈现修改后的数据的方式构建我的模板

有一天我可能会把一个spreatsheet包包在一起,

我做了一些类似的(类似于meteor for mobile中的spreatsheet)

我记得Meteor中的代码:在本例中使用会话会由于从/到JSON的转换而产生开销

我建议:

通过创建一个对象来使用Deps处理两个dim阵列,从而使阵列具有反应性(具有一个接口:add/del row/col、get/set cell) 文档:-如果适合项目,也可以使用集合

我在当前模板系统中遇到的一个问题是,必须将内容拆分为子模板。您的代码所做的是在反应性数据无效时进行完全的重新渲染-如果一个单元格更改整个内容,则重新渲染。 尝试将其拆分为:

{{each row}}
  {{>viewRow}}
{{/each}}

<template name="viewRow">
  <tr>
  {{each cell}}
    {{>viewCell}}
  {{/each}}
  </tr>
</template>

...
{{每行}
{{>viewRow}
{{/每个}}
{{每个单元格}
{{>viewCell}
{{/每个}}
...
我为Meteor中的debuggin模板制作了一个片段: 这将总结模板呈现提供一些统计信息,它帮助med以一种只重新呈现修改后的数据的方式构建我的模板

也许有一天我会把一个spreatsheet包在一起