으로 설정되기 전에 Ext.Ajax.request가 응답 할 때까지 기다리십시오. extjs 4 애플리케이션에 대해 현재 로그인 한 사용자를 설정하는 코드가 아래에 표시됩니다. 주석을 제거한 코드는 코드가 계속되기 전에 경고가 수락 될 때까지 기다리는 것처럼 보입니다 (보이는 것처럼 보입니다). 따라서 비동기 호출이 성공할 때까지 충분한 시간을 가질 수 있습니다. 경고 메시지를 주석으로 처리하면 AJAX 호출이 다시 발생하지 않기 때문에 "employeeFilter"변수가 설정되지 않습니다. 어떤 경우에는 "employeeFilter"를 null로 설정합니다. 어떻게 AJAX 응답이 성공할 때까지 기다릴 수 있도록이 문제를 해결할 수 있습니까?변수가
var loggedInUserId = null;
Ext.Ajax.request({
url: '/Controls/UserList/UserService.asmx/GetLoggedInUserId',
method: 'POST',
jsonData: { 'x': 'x' },
success: function (response, opt) {
loggedInUserId = Ext.decode(response.responseText).d;
},
failure: function (response) {
}
});
//alert(loggedInUserId);
var employeeFilter = loggedInUserId;
var projectFilter = '-1';
콜백 함수에 'employeeFilter' 값을 지정해야하는 것처럼 들립니다. – ultranaut
AJAX의 "A"는 "비동기"입니다. –