2017-01-14 3 views
1

은 내가 데이터를 처리 엔드를 백업하고 그 결과를 반환하는 $http.get 전화를 걸, 나는 (속성이 데이터 목록에 선언 된) 동적 this에 속성을 할당 할 :

watch: { 
    send_amount: function() { 
     this.updateAmount('my_param1'); 
    }, 
    receive_amount: function() { 
     this.updateAmount('my_param2'); 
    }, 
}, 

methods: { 
    updateAmount: function(_par) { 

     var vVar = this; 

     this.$http.get('http://www.website.dev/api/calculate', { params: { rec: _par } }) 
       .then(function(response) { 

        _results = JSON.parse(response.data); 

        $.each(_results, function(k, v) { 

         vVar[k] = v; // << this causes the $http.get request to be sent over and over, infinitely. 

        }); 

       }); 
    } 

} 
+0

을 보고있는 변수를 업데이트하여 만난 경우 다시 불려지는 hod. – Nit

+0

그게 문제가 된 것 같습니다. 둘 중 하나가 클라이언트에 의해 업데이트되고 다른 하나가 프로그래밍 방식으로 업데이트 될 때 내가보고있는 두 개의 입력이 있습니다. 그것을 설명하기 위해 코드를 업데이트했습니다. 그렇다면 프로그래밍 방식으로 업데이트 할 때 업데이트하지 않도록주의해야합니까? – qwaz

답변

1

을 당신이하지 않는 변수는 프로그래밍 방식으로 변경 될 때, updateAmount 메소드를 호출 할 대신 시계를 제거하고 다음과 같이, 이러한 변수의 입력 필드에 v-on:change을 사용할 수 있습니다 : 당신이있어 짐작 엔, 데이터를 보지 않고

<input v-model="receive_amount" v-on:change"updateAmount" />