Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.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调用它吗?_Javascript_Angularjs - Fatal编程技术网

我可以在另一个函数中创建一个函数并用Javascript调用它吗?

我可以在另一个函数中创建一个函数并用Javascript调用它吗?,javascript,angularjs,Javascript,Angularjs,我有以下代码: modalOpen: function ($scope) { $scope.view = $scope.modal.action; $scope.modalForm.$setPristine(); $scope.view = $scope.modal.action; if ($scope.modal.action != "delete") {

我有以下代码:

        modalOpen: function ($scope) {
            $scope.view = $scope.modal.action;
            $scope.modalForm.$setPristine();
            $scope.view = $scope.modal.action;
            if ($scope.modal.action != "delete") {
                $scope.modal.timeout = window.setTimeout(function () {
                    $scope.modal.interval = window.setInterval(function () {
                        if (($scope.view == "edit" || $scope.view == "new") && !$scope.modalForm.$pristine) {
                            factory.modalSubmit($scope, $scope.modal.data, true);
                        }
                    }, 5 * 60 * 1000);
                    if (($scope.view == "edit" || $scope.view == "new") && !$scope.modalForm.$pristine) {
                        factory.modalSubmit($scope, $scope.modal.data, true);
                    }
                }, 5 * 60 * 1000);
            }
        },
是否有一种方法可以封装以下内容:

if (($scope.view == "edit" || $scope.view == "new") && !$scope.modalForm.$pristine) {
                            factory.modalSubmit($scope, $scope.modal.data, true);
                        }
这样我就可以重复使用它,而不必重复相同的行

var modalSubmit = function () {
     if (($scope.view == "edit" || $scope.view == "new") && !$scope.modalForm.$pristine) {
        factory.modalSubmit($scope, $scope.modal.data, true);
     }
}
$scope.modal.timeout = window.setTimeout(function () {
    $scope.modal.interval = window.setInterval(function () {
        modalSubmit();
    }, 5 * 60 * 1000);
    modalSubmit();
}, 5 * 60 * 1000);
    modalOpen: function ($scope) {
        $scope.view = $scope.modal.action;
        $scope.modalForm.$setPristine();
        $scope.view = $scope.modal.action;

        function maybe_submit() {
            if (($scope.view == "edit" || $scope.view == "new") && !$scope.modalForm.$pristine) {
                factory.modalSubmit($scope, $scope.modal.data, true);
            }
        }

        if ($scope.modal.action != "delete") {
            $scope.modal.timeout = window.setTimeout(function () {
                $scope.modal.interval = window.setInterval(maybe_submit, 5 * 60 * 1000);
                maybe_submit();
            }, 5 * 60 * 1000);
        }
    },