Angular Directive는 ng-model의 초기 null 값을 캡처합니다.

Yagiz

사용자 지정 지시문을 사용하고 $ scope.model을 캡처하려고 시도하고 있으며 초기 값이있는 경우 해당 데이터 등을 처리하고 싶습니다.

내 초기 코드는 다음과 같습니다.

if ($scope.model && $scope.model.length > 0) {
  var id = angular.isArray($scope.model) ? $scope.model.join(',')
    : $scope.model;

  if (id)
    initialJobs.push(
      $http.get(config.root.api + 'sectors?id=' + id)
    );
}

$ scope.model이 null이기 때문에 if 문이 처리되지 않습니다. (console.log를 넣고 $ scope.model이 null임을 확인했습니다).

제한 시간이 1000ms이면 $ scope.model의 실제 데이터를 캡처합니다.

추신 : $ scope.model 데이터는 컨트롤러의 HTTP 요청을 통해 수집되며 양방향 바인딩으로 인해 먼저 null로 보도록 전송되고 데이터가 형성되면 모델 값이 변경됩니다.

읽어 주셔서 감사합니다 :)

추신 :이 문제를 해결하는 한 가지 해결책은 라우터 계층에서 비동기 요청을 해결하고 양방향 바인딩에서 지연이없는 컨트롤러로 전달하는 것입니다. 하지만 저는이 문제에 대해 나쁜 습관이라고 생각합니다.

CKK

해당 값에 감시자를 추가 할 수 있습니다.

$scope.$watch('model', function(model, oldModelValue) {
    var id = angular.isArray(model) ? model.join(',') : model;

    if (id)
        initialJobs.push($http.get(config.root.api + 'sectors?id=' + id));
});

주의해야합니다. watcher $scope.model는 null이거나 다른 예상치 못한 값이더라도 변경 될 때마다 콜백을 호출 합니다.


또 다른 더 나은 솔루션은 $ scope.model을 say $scope.modelPromise같은 값으로 설정하고 약속을 할 수있는 $ http 호출의 반환 값 (약속)을 설정할 수 있습니다 then.

$scope.modelPromise = $http.get('some-url').then(function(response) {
    $scope.model = response.data;
});

// somewhere else
$scope.modelPromise.then(function(response) {
    // do stuff here
});

과잉이 아니라면 $ resource 서비스를 사용하는 것이 좋습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Angular Directive는 ng-model의 초기 null 값을 캡처합니다.

분류에서Dev

Angular Checkbox, 초기 값은 ng-model과 무관합니다.

분류에서Dev

angularjs는 다른 ng-model의 값을 사용하여 기본값 ng-model을 설정합니다.

분류에서Dev

Angular 2 ng-bootstrap의 자동 완성 기본값 / 초기 값을 설정하는 방법은 무엇입니까?

분류에서Dev

Angular Directive captures initial null value of ng-model

분류에서Dev

powershell csv는 세 열의 1 값을 캡처합니다.

분류에서Dev

Angular : 항목의 속성이없는 경우 ng-repeat에서 기본값을 설정합니다.

분류에서Dev

왜 Angular는 $ sce.trustAsHtml에 의해 삽입 된 ng-model의 입력 값을 얻지 못합니까?

분류에서Dev

Angular ng-Model 다른보기 및 값

분류에서Dev

바꾸기는 비 캡처 그룹을 무시합니다.

분류에서Dev

Scala Regex는 별도의 그룹을 캡처합니다.

분류에서Dev

Angularjs-선택적 필드의 angular 1.4.4 ng-model이 잘못된 값을 반환합니다.

분류에서Dev

Angular ng-model은 캔버스의 텍스트 상자에서 값을 업데이트합니다.

분류에서Dev

ng-repeat 루프에서 입력 확인란의 ng-model을 초기화하는 방법

분류에서Dev

배열 초기화는 PHP에서 null을 반환합니다.

분류에서Dev

지연 초기화는 항상 null을 반환합니다.

분류에서Dev

Angular UI 부트 스트랩 typeahead ng-model은 파일을 지울 때 null이라고 말합니다.

분류에서Dev

Fiddler는 Insomnia의 요청을 캡처하지 않지만 Postman의 rquest를 캡처합니다.

분류에서Dev

C의 함수는 변수의 초기 값을 반환합니다.

분류에서Dev

메소드가 두 번 실행되기 전에 주어진 메소드. 첫 번째는 null을, 두 번째는 문자열 인수를 캡처합니다.

분류에서Dev

R에서 null 값을 캡처하기 위해 이진 값을 만드는 방법은 무엇입니까?

분류에서Dev

지시문의 값을 ng-model에 전달합니다. -angularjs

분류에서Dev

C #에서 null Json 값을 처리합니다. 여기서 처리하는 방법?

분류에서Dev

파이썬 모의는 초기 미리 정의 된 값이 반환 된 후 기본값을 반환합니다.

분류에서Dev

ng-model이 다른 개체의 속성 값을 변경하는 문제

분류에서Dev

사용자 정의 Angular 지시문에서 ng-model 범위 값을 변경하는 방법은 무엇입니까?

분류에서Dev

바꾸기는 잘못된 캡처 그룹을 반환합니다.

분류에서Dev

다른 입력 필드의 다른 값을 캡처하는 단일 기능

분류에서Dev

선택한 옵션의 값을 캡처하려고합니다.

Related 관련 기사

  1. 1

    Angular Directive는 ng-model의 초기 null 값을 캡처합니다.

  2. 2

    Angular Checkbox, 초기 값은 ng-model과 무관합니다.

  3. 3

    angularjs는 다른 ng-model의 값을 사용하여 기본값 ng-model을 설정합니다.

  4. 4

    Angular 2 ng-bootstrap의 자동 완성 기본값 / 초기 값을 설정하는 방법은 무엇입니까?

  5. 5

    Angular Directive captures initial null value of ng-model

  6. 6

    powershell csv는 세 열의 1 값을 캡처합니다.

  7. 7

    Angular : 항목의 속성이없는 경우 ng-repeat에서 기본값을 설정합니다.

  8. 8

    왜 Angular는 $ sce.trustAsHtml에 의해 삽입 된 ng-model의 입력 값을 얻지 못합니까?

  9. 9

    Angular ng-Model 다른보기 및 값

  10. 10

    바꾸기는 비 캡처 그룹을 무시합니다.

  11. 11

    Scala Regex는 별도의 그룹을 캡처합니다.

  12. 12

    Angularjs-선택적 필드의 angular 1.4.4 ng-model이 잘못된 값을 반환합니다.

  13. 13

    Angular ng-model은 캔버스의 텍스트 상자에서 값을 업데이트합니다.

  14. 14

    ng-repeat 루프에서 입력 확인란의 ng-model을 초기화하는 방법

  15. 15

    배열 초기화는 PHP에서 null을 반환합니다.

  16. 16

    지연 초기화는 항상 null을 반환합니다.

  17. 17

    Angular UI 부트 스트랩 typeahead ng-model은 파일을 지울 때 null이라고 말합니다.

  18. 18

    Fiddler는 Insomnia의 요청을 캡처하지 않지만 Postman의 rquest를 캡처합니다.

  19. 19

    C의 함수는 변수의 초기 값을 반환합니다.

  20. 20

    메소드가 두 번 실행되기 전에 주어진 메소드. 첫 번째는 null을, 두 번째는 문자열 인수를 캡처합니다.

  21. 21

    R에서 null 값을 캡처하기 위해 이진 값을 만드는 방법은 무엇입니까?

  22. 22

    지시문의 값을 ng-model에 전달합니다. -angularjs

  23. 23

    C #에서 null Json 값을 처리합니다. 여기서 처리하는 방법?

  24. 24

    파이썬 모의는 초기 미리 정의 된 값이 반환 된 후 기본값을 반환합니다.

  25. 25

    ng-model이 다른 개체의 속성 값을 변경하는 문제

  26. 26

    사용자 정의 Angular 지시문에서 ng-model 범위 값을 변경하는 방법은 무엇입니까?

  27. 27

    바꾸기는 잘못된 캡처 그룹을 반환합니다.

  28. 28

    다른 입력 필드의 다른 값을 캡처하는 단일 기능

  29. 29

    선택한 옵션의 값을 캡처하려고합니다.

뜨겁다태그

보관