gpt4 book ai didi

javascript - 链接两个函数的最佳实践,AngularJs/JavaScript

转载 作者:行者123 更新时间:2023-11-28 15:15:54 25 4
gpt4 key购买 nike

我有两个功能。

单击“关闭”按钮时会隐藏模式另一个功能向右滑动并将模式更改为另一个状态/ View 。

当用户滑动到新状态时,我遇到了模式不“隐藏”的问题。我可以看到它有效,但模式仍然显示,我在想解决这个问题的最佳方法是链接我的两个函数?这是正确的术语吗?

两个函数..

隐藏模式

$scope.closetripInfo = function() {
$scope.modal.hide();
};

向右滑动即可显示新的.state

$scope.onSwipeRight = function() {
$state.go('app.current-trip');
}

这成功了!但是..我想做的是将令人兴奋的 closetripInfo 函数插入到 onSwipeRight 中,如下所示:

$scope.onSwipeRight = function() {

$scope.closetripInfo();
$state.go('app.current-trip').closetripInfo();
}

它可以工作,但它对我来说看起来不正确,并且我收到错误..我没有成功地正确执行它。或许事情并没有那么简单。我还认为我可能需要了解 promise 等最佳实践?

错误

类型错误:$state.go(...).closetripInfo 不是函数 在 Scope.$scope.onSwipeRight

任何建议或资源将不胜感激。谢谢!

最佳答案

您可以使用 AngularJS Promise 异步运行函数。 AngularJS 中的 Promise 是由内置的 $q 服务提供的。您可以阅读它 here .

$scope.onSwipeRight = function() {
var deferred = $q.defer();
deferred.resolve('res');

$state.go('app.current-trip');

// We return a promise
return deferred.promise;
}


onSwipeRight().then(function(res) {
// Success callback
$scope.closetripInfo();
},null);

这是一个fiddle关于使用 $q 服务。这也是一个很好的博客post其中 promise 被解释为卡通。

关于javascript - 链接两个函数的最佳实践,AngularJs/JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33975043/

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