更新Vue实例会禁用某些元素

时间:2019-02-26 04:37:53

标签: jquery vue.js

我正在创建一个花名册,可以在其中使用Vue进行分配。如果我将某人分配给某个特定的班次,那么该人将从所有首选项中删除,我们将不再能够浏览其他选项。关闭将首选项上移1,上一个图标将下移1,然后勾选进行分配。看一下代码jsfiddle

现在,当分配完成后,将执行删除操作。之后,将强制更新整个Vue。此删除操作会禁用所有其他表单元格中的首选项列表导航。为什么会发生这种禁用?有没有解决的办法。还可以避免Vue force Update吗?

 $('.assign').click(function() {
   app.assignNurse($(this));
   app.$forceUpdate();


});

1 个答案:

答案 0 :(得分:1)

请更新代码中的以下行。

$(document).on('click','.close',function() {
       const curr = $(this).parent();
       //console.log(curr.next());
       curr.next().show();
       $(this).parent().hide();
       //$('.selection2').show();
       //prevObj = curr;

    });
 $(document).on('click','.assign',function() {
            console.log("ss");
       app.assignNurse($(this));            
    });

$(document).on('click','.repeat',function(){
  $(this).parent().hide();
  //console.log($(this).parent().prev('div'));
  $(this).parent().prev('div').show();

  //$(this).parent().remove();

});

问题即将到来,因为您正在动态创建元素,因此jquery简单点击事件无法在动态创建的元素上起作用,因此您需要编写这样的click事件。

这里的fiddle链接已更新,您可以在此处查看其是否正常运行。