我有以下代码:
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);
}
这样我可以重复使用它而不必重复相同的行?
答案 0 :(得分:1)
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);
答案 1 :(得分:1)
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);
}
},