Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.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
Javascript ng单击重置按钮仅工作一次_Javascript_Angularjs_Button_Reset - Fatal编程技术网

Javascript ng单击重置按钮仅工作一次

Javascript ng单击重置按钮仅工作一次,javascript,angularjs,button,reset,Javascript,Angularjs,Button,Reset,我的重置按钮有问题。它起作用,但只有一次。之后,我需要重新加载网页,让按钮再次工作 在JS文件中 var ctrl = this; var original_device = angular.copy(device.data); ctrl.device = device.data; ctrl.reset = function () { ctrl.device = original_device; }; 在html文件中 <button ng-click="ctrl.reset(

我的重置按钮有问题。它起作用,但只有一次。之后,我需要重新加载网页,让按钮再次工作

在JS文件中

var ctrl = this;
var original_device = angular.copy(device.data);
ctrl.device = device.data;

ctrl.reset = function () {
    ctrl.device = original_device;
};
在html文件中

<button ng-click="ctrl.reset()">Reset</button>
重置

您需要复制副本,因为使用后,设备和副本将是同一个对象

ctrl.reset = function () {
     ctrl.device = angular.copy(original_device);
};

你说只工作一次是什么意思?我的意思是它只重置一次值。之后它不会重置值。plnkr.co是我能做的最好的方法,为我提到的这两个文件提供完整的代码。以下是链接:更新:我找到了一个修复程序。我对试图重置的变量进行了第二次深度复制。@这不起作用。我将代码放入plnkr.co,因为它与angular一起工作。这里是链接