Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Knockout.js 触发重画会导致隐藏列_Knockout.js_Footable - Fatal编程技术网

Knockout.js 触发重画会导致隐藏列

Knockout.js 触发重画会导致隐藏列,knockout.js,footable,Knockout.js,Footable,我有一个plnk来证明我的问题: 有一个任务列表,每个任务可以包含一个任务列表。任务只能是顶级任务或具有单个父任务,并且任务不能包含自身 当我使用foreach绑定时,任务被“保存”到正确的任务,并按预期工作。(除了可行走的功能之外)(保存在引号中,因为任务除了被推送到可观察阵列之外并没有真正保存。) 根据这个答案:我创建了一个自定义的脚绑定。在我尝试使用嵌套任务之前,绑定完全按照我想要的方式工作 要查看我想要的行为,请按“添加任务”,按“确定”,单击刚刚创建的任务并添加另一个任务或子任务。按“

我有一个plnk来证明我的问题:

有一个任务列表,每个任务可以包含一个任务列表。任务只能是顶级任务或具有单个父任务,并且任务不能包含自身

当我使用foreach绑定时,任务被“保存”到正确的任务,并按预期工作。(除了可行走的功能之外)(保存在引号中,因为任务除了被推送到可观察阵列之外并没有真正保存。)

根据这个答案:我创建了一个自定义的脚绑定。在我尝试使用嵌套任务之前,绑定完全按照我想要的方式工作

要查看我想要的行为,请按“添加任务”,按“确定”,单击刚刚创建的任务并添加另一个任务或子任务。按“确定”,再次单击任务,并查看子任务是否按预期保存

要看到问题,请改变

<tbody data-bind="foreach: items, delegatedHandler: 'click'"> 
因此,由于某些原因,这些列被设置为隐藏,我只是不知道如何设置它们,使它们不被隐藏

编辑:我发现如果我这样做:(在footableBinding.js中)

除此之外:

footable.redraw();

这给出了我期望的行为,但这似乎不是解决问题的正确方法。

对于我来说,这是一个相同的问题,但只是在一个简单的表上

如果我没有将属性“data hide”设置为“tablet”或“phone”的
,我的表将被隐藏

只需放置一个带有数据隐藏的
,我的表就可以看到


它看起来像一个bug。

我发现的一件事是,如果您使用条带化,并且没有可以隐藏的列,则会引发异常。对我来说似乎也是一个bug,但我想你们可以争辩说,Footable的最初目的是隐藏某些列。另一方面,即使没有隐藏任何列,排序和筛选仍然很有用。
if (data.hide[breakpointName] === false) $column.show();
                else $column.hide();
footable.reset();
footable.init();
footable.redraw();