内编辑时消失我有一个项目数组,每个显示为NG-重复内的指令是这样的:项目的角度ngRepeat
<div ng-repeat="item in ctrl.data | filter:ctrl.query" class="ubi-box container-fluid">
<user-item item="item" . . .></user-item>
</div>
正如你所看到的,上有NG的过滤器-重复。在指令中,用户可以编辑表单内的项目,以显示用户何时单击其中一个项目。
当用户编辑影响过滤器的字段时会出现问题。如果用户使用过滤器(ctrl.query)找到了该项目,并且编辑的文本表示该项目不再与过滤器匹配,那么在用户点击保存或任何内容之前该项目突然消失。噗!
什么是最优雅的解决方案?编辑开始时我不想关闭过滤器,因为所有的项目都会重新出现。我希望过滤器仍能正常工作,但我希望正在编辑的项目即使会被过滤掉也会继续显示。
我是否在每个项目中设置了“isOpen”标志,并向筛选器添加了“orOpen”子句?添加这样的标志总是让我觉得很糟糕,我甚至不知道如何在过滤器语法中这样做。
是否向过滤器添加“or isFormVisible”子句?这可能会更整洁,但是,我又如何在ngRepeat过滤器语法中做到这一点?
想法?
在此先感谢
约翰
这就是答案我很害怕,因为重写很多代码的工作很多:(我希望只是调整过滤器,也许(现在我更多地阅读)了一个函数,但我担心你可能是对的,我有在我的应用程序的其他地方使用了这种模式,所以我知道它已经足够了,谢谢 – John
@John我给了它另一个旋转 –
我开始致力于实现你的第一个答案,并且它不是很难实现,以我的指令结构的方式进行,它不会比你的第二个答案更困难:只需要几行代码(我已经在使用复制模式复制函数的形式,所以它只是反转它的问题为表格保存,并通过c opy的形式指令。)所以哪一个是更坚实的方法,你认为?那第一个模型拷贝来自文档,所以也许我应该这样做?太感谢了。 – John