私は約束オブジェクトと同じ方法で解決しようとしています。Angularのdefer.resolveをJavascript Promiseオブジェクトで解決します。 別の言い方をすると、返されるダミーの約束オブジェクトを作成したいと思います。この約束は後で解決される予定です。角度で約束を延期/延期する
私はそれをこのように記述します。
...
$scope.checkThis = { test: false };
function getPromise() {
var deferred = $q.defer();
var data = [1, 2, 3];
function resolvePromise() {
deferred.resolve(data);
}
$scope.$watch("checkThis.test", function(newVal, oldVal) {
if (newVal) {
resolvePromise();
}
});
return deferred.promise;
}
$scope.getData1 = function() {
return getPromise();
};
$scope.getData2 = function() {
return getPromise();
};
...
どのように私はプレーンなJavascriptの約束のオブジェクトと同じことを達成するであろうか?いくつかの解決をトリガーするイベントが1つ($ scope.checkThis.testがtrueになる)、Promiseコンストラクターを使用する方法はわかりません。
"*いくつかの解決策をトリガーするイベント*"とはどういう意味ですか?なぜそれは遅延のために働くのだろうが、約束のコンストラクタのためには働かないだろうか? – Bergi