/START 说明原因
我正在进行“加载更多”类型的交互:用户进入页面底部,我加载更多内容。
由于我正在使用一个将内容格式化为“pinterest 风格”(砌体)的插件,因此我需要获取 rest 调用的输出,使用 ember 视图进行格式化,并且我正在做类似的事情:
<div id="list">
</div>
<div id="hidden" style="display:none">
{{#each item in App.itemsController}}
test {{item.id}}
<br />
{{/each}}
</div>
我想做的是,load the content in the hidden div, and then pass its HTML generated content to the plugin to process in my formatted list view
.
如果我只是复制#hidden 内容,Ember 脚本就会进入,并且在随后的“加载更多”中,除了进入#hidden div 之外,内容还会插入到#list 中。那是因为我复制了整个车把。
所以我去掉了容器标签,我认为这个标签是包装控制器内容绑定,但即使从我传递给#list的内容中剥离它,当调用“加载更多”时,#list 仍然会自动更新。
我知道这是一件肮脏的事情,但为了提高客户端的性能,我必须采取类似的方法。
/END 说明原因
//实际问题;)
鉴于此背景,问题是,剥离容器变形脚本标签(如下面的那些),只取其中的内容,不应该摆脱自动更新内容的功能吗?
<script id="metamorph-X-start" type="text/x-placeholder"></script>
//ALL THE CONTENT
<script id="metamorph-X-end" type="text/x-placeholder"></script>
在这些里面,我只生成了实际的内容,比如:
<script id="metamorph-9-start" type="text/x-placeholder"></script>
test <script id="metamorph-59-start" type="text/x-placeholder"></script>2873<script id="metamorph-59-end" type="text/x-placeholder"></script>
<br>
<script id="metamorph-9-end" type="text/x-placeholder"></script>
<script id="metamorph-10-start" type="text/x-placeholder"></script>
test <script id="metamorph-60-start" type="text/x-placeholder"></script>2872<script id="metamorph-60-end" type="text/x-placeholder"></script>
<br>
<script id="metamorph-10-end" type="text/x-placeholder"></script>
另一种方法是以编程方式在变量中渲染模板并处理它,这肯定是一种更好的方法,但我只是想知道#each 绑定如何在内部工作,因为我认为变形正在这样做。