AngularJS에서 $timeout을 사용하여 매개 변수로 함수를 실행하는 방법은?
제 Angular 안에 이 기능이 있습니다.JS 컨트롤러.이렇게 보입니다.
polling_interval=1000;
var poll = function()
{
//Execution code
$timeout(poll, polling_interval);
};
poll();
사용합니다.$timeout앵귤러 서비스JS는 계속 자신을 부르는 것입니다.이 폴 함수에 매개 변수를 추가할 때까지 작동합니다.추가된 매개변수에 대한 내 코드는 다음과 같습니다.
polling_interval=1000;
var poll = function(param1, param2)
{
//Execution code
$timeout(poll(param1, param2), polling_interval);
};
poll(param1, param2);
그 구문은 받아들일 수 없어서 저는 지금 막막합니다.다음을 사용하여 매개 변수를 사용하여 함수를 실행하는 방법$timeoutAngularJS에서?이 작업을 수행할 수 없는 경우 이 문제를 해결할 수 있는 방법이 있습니까?저는 제 여론조사 기능이 매개변수를 받아들이도록 하고 싶습니다.
$Timeout은 Angular의 window.setTimeout의 포장지입니다.당연히 setTimeout과 마찬가지로 타임아웃된 fn에 추가 파라미터를 전달할 수 있습니다.
각진 상태에서JS API:
$timeout([fn], [delay], [invokeApply], [Pass]);
[fn] (기능) 당신의 기능이 되는 것
[delay] (숫자) 지연 시간(ms)
[invokeApply](boolean)은 기본값이 true이고, true이고, fn은 $apply 내부에서 실행되며, false인 경우 모델 더티 검사를 건너뜁니다.
[패스] 추가 파라미터!이것이 당신이 원하는 것입니다!
코드가 어떻게 표시되어야 합니다.
polling_interval = 1000;
var poll = function(param1, param2){
//Execution code
$timeout(poll, polling_interval, true, param1, param2);
};
poll(param1, param2);
이 방법은 매개 변수를 타임아웃된 fn에 전달하는 적절한 방법입니다.이것이 도움이 되기를 바랍니다.
편집: 이 기능은 2015년 1월 22일(v1.4.1)에 추가되었으며, 버전 이전의 올바른 접근 방식은 다음과 같습니다.
polling_interval = 1000;
var poll = function(param1, param2){
//Execution code
$timeout(poll.bind(null, param1, param2), polling_interval);
};
poll(param1, param2);
왜냐하면 첫번째 파라미터 타입은$timeoutis function, 당신은 다음과 같습니다.
polling_interval=1000;
var poll = function(param1, param2)
{
//Execution code
$timeout(function() {poll(param1, param2)}, polling_interval);
};
poll(param1, param2);
익명 기능을 사용하는 것이 가장 쉬운 방법일 것입니다.
polling_interval=1000;
var poll = function(param1, param2)
{
//Execution code
$timeout(function () { poll(param1, param2) }, polling_interval);
};
poll(param1, param2);
언급URL : https://stackoverflow.com/questions/22876031/how-to-run-function-with-parameters-using-timeout-in-angularjs
'programing' 카테고리의 다른 글
| long-poll jQuery.ajax()는 전화가 잠든 후 다시 전화하지 못합니까? (0) | 2023.09.26 |
|---|---|
| 브라우저에서 실행되는 자바스크립트 샌드박스가 가능합니까? (0) | 2023.09.26 |
| 자바스크립트를 이용하여 다음 / 이전 요소를 얻으시겠습니까? (0) | 2023.09.26 |
| WooCommerce 관리자 주문 목록의 특정 메타 필드별로 주문 필터링 (0) | 2023.09.26 |
| 디렉토리 가져오기를 위한 영구 테이블과 임시 테이블 (0) | 2023.09.26 |