我正在为我的下一个项目评估Ember.js.到目前为止,我很喜欢约束机制,但对这种方法有疑问.根据文档"为了知道在底层属性发生变化时要更新HTML的哪一部分,Handlebars将插入带有唯一ID的标记元素." 我可以忍受这些标签,但它们非常分散注意力(见下面的例子).这种方法的基本原理是在任何地方讨论的.是否考虑过任何替代方案?
<tbody>
<script id="metamorph-0-start" type="text/x-placeholder"></script>
<script id="metamorph-1-start" type="text/x-placeholder"></script>
<tr>
<td class="quote-name">
<script id="metamorph-7-start" type="text/x-placeholder"></script>
Apple
<script id="metamorph-7-end" type="text/x-placeholder"></script>
</td>
<td class="quote-code">...</td>
<td class="quote-value">...</td>
<td class="quote-bid">...</td>
<td class="quote-offer">...</td>
</tr>
...
</tbody>
Run Code Online (Sandbox Code Playgroud)
据我所知,Metamorph使用脚本标签的基本原理是脚本标签可以在任何地方出现在DOM中,而不会在视觉上破坏任何内容.当你考虑它时,这个事实变得非常重要,因为它允许一种方法来在框架中观察DOM中的任何内容.从而实现了使Ember如此伟大的所有绑定"魔力".
去年早些时候,我确实记得IRC频道关于此的一些讨论,并考虑了其他选择,但脚本标签获胜.