Ing*_*gro 7 knockout.js knockout-sortable
我只是遇到了使用Knockout和Knockout-sortable插件制作的To-do-like sortable列表的另一个问题.
我需要在当前时间放置的元素下放置一个红色分隔符,如果在该分隔符之前删除了一个元素,则取消排序.
我尝试使用"可见"绑定并且它以某种方式工作,但是visibile绑定只是隐藏了DOM元素,它搞乱了可排序的arrayIndex,为它添加了不必要的元素.
<div class="delimiter" data-bind="visible: time() == $root.limit()"></div>
Run Code Online (Sandbox Code Playgroud)
"if"绑定会更好,因为它只在必要时插入DOM元素,但我用于visible的表达式总是被评估为true,我无法弄清楚为什么......
<div class="delimiter" data-bind="if: time() == $root.limit()"></div>
Run Code Online (Sandbox Code Playgroud)
这是小提琴:http://jsfiddle.net/ingro/VaqqF/
任何帮助表示赞赏,谢谢!
Nik*_*iko 18
你只是误解了if-binding:它删除了它所应用的节点的内容,而不是节点本身.如果要在不创建包装的情况下删除节点(可以用来添加绑定),还有if-binding的注释版本,称为无容器控制流语法:
<!-- ko if: time() == $root.limit() -->
<div class="delimiter"></div>
<!-- /ko -->
Run Code Online (Sandbox Code Playgroud)
参考:http://knockoutjs.com/documentation/if-binding.html
| 归档时间: |
|
| 查看次数: |
14955 次 |
| 最近记录: |