반응형
변수가 angularjs 약속인지 알 수 있는 방법이 있나요?
기능을 스코프 파라미터로 하는 지시어를 만들고 있습니다.scope: { method:'&theFunction' }
이 방법으로 반환된 결과가 각도의 약속인지 아닌지를 알아야 합니다(네, 해결 시 어떤 일이 발생할 경우 즉시 발생합니다).
지금으로서는 테스트 중인데foo.then
더 좋은 방법이 없을까 해서요.
사용할 수 있습니다.$q.when
(그것이든 아니든) 약속으로 오브젝트를 감습니다.그러면, 당신은 항상 약속을 지키고 있다는 것을 확신할 수 있습니다.이렇게 하면 결과를 처리하는 코드가 간소화됩니다.
문서:$q.when
여기 $q가 있습니다.
각도when()
데이빈이 말한 것처럼 좋은 선택입니다.
이것이 고객의 요구를 만족시키지 못할 경우 Angular의 내부 확인 방법(내부 확인 방법 사용)when
)는, 고객의 작업에 매우 가깝습니다.
var ref = function(value) {
if (value && isFunction(value.then)) {
// Then this is promise
}
@kayakDave, 제대로 안내해 주셔서 감사합니다.
when(value, [successCallback], [errorCallback], [progressCallback]); Wraps an object that might be a value or a (3rd party) then-able promise into a $q promise. This is useful when you are dealing with an object that might or might not be a promise, or if the promise comes from a source that can't be trusted.
$q.when(value).then(function (data) {
//this helps me to bind data from $resource or $http or object
}
이 바이올린을 점검하다
그$q.when()
대부분의 사용 사례에 대한 답변이 가장 좋은 답변인 것 같습니다. 제 경우 instance of the use case를 사용했습니다.
if(buttonData instanceof $q) {
buttonData.then(function(actions) {
$scope.buttonActions = actions;
});
} else {
$scope.button = buttonData;
}
또는 아래의 IF도 동작했지만, 저는 위의 솔루션을 사용하게 되었습니다.
if(Object.getPrototypeOf(buttonData) === $q.prototype) {
언급URL : https://stackoverflow.com/questions/20723735/any-way-to-know-if-a-variable-is-an-angularjs-promise
반응형
'programing' 카테고리의 다른 글
javascript fetch를 동기화하는 방법 (0) | 2023.03.26 |
---|---|
null로 정의된 'metaDataSourceAdvisor' 빈을 등록할 수 없습니다. (0) | 2023.03.26 |
PHP를 사용하여 JSON POST 읽기 (0) | 2023.03.26 |
Spring Boot 2.2.0에서의 x-forwarded 헤더에 대처하는 방법(역프록시 배후에 있는 Spring Web MVC) (0) | 2023.03.26 |
Angular 서비스가 상태를 가져야 합니까? (0) | 2023.03.21 |