gpt4 book ai didi

javascript - 通过链式启动多个Function

转载 作者:行者123 更新时间:2023-12-03 04:16:39 25 4
gpt4 key购买 nike

我的工厂在打开的模态窗口上有一些返回示例:

openModal: function (urn, id, templateId, controller) {
$http({
method: 'GET',
url: urn
}).success(function (data, $scope) {
$("#" + id).append($compile(data)($scope));
modalInstance = $uibModal.open({
templateUrl: templateId,
controller: controller,
backdrop: 'static',
keyboard: false
});
}).error(function () {
alert("error");
return null;
});
document.getElementById('main').classList.add("blur");
},

在这个函数和 View 追加到 DOM 之后,我想调用另一个函数 我从另一个服务注入(inject)到 openModalfactory 中。

示例:

$map.autocomplite('wizardsearch');
$map.getAutoUserLocationPath();

你能解释一下我必须如何通过 $q 来做到这一点吗?谢谢您的回答。

最佳答案

延迟应该使函数返回一个promise,您可以在该函数完成时使用它来执行某些操作看下面的代码

openModal: function (urn, id, templateId, controller,$q) {
var def = $q.defer();
$http({
method: 'GET',
url: urn
}).success(function (data, $scope) {
def.resolve(data);
$("#" + id).append($compile(data)($scope));
modalInstance = $uibModal.open({
templateUrl: templateId,
controller: controller,
backdrop: 'static',
keyboard: false
});
}).error(function (err) {
def.reject(err)
alert("error");

});
document.getElementById('main').classList.add("blur");
return def.promise;
}

要使用它,请像这样调用它:

openModel().then(function(){     
//do what you want here
})

关于javascript - 通过链式启动多个Function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44110655/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com