2016-10-05 3 views
0

Когда я выполнить запрос AJAX в машинописи, это работает, пока я пытаюсь получить ответ:Машинопись AJAX запрос возвращения ошибки

let req = new XMLHttpRequest(); 
req.open('GET','img/spritesheet.json',true); 
req.send(); 
req.responseType = 'json'; 
req.onload=(data)=>{ 
    var json = data.currentTarget.response; 
} 

Он бросает мне ошибку:

"Property 'response' does not exist on type 'EventTarget'

В прохладную как машинопись, некоторые вещи не имеют абсолютно никакого смысла. Каково решение этого?

+0

Не могли бы вы разместить здесь полный код? –

+0

Решение: [не использовать машинопись] (https://gist.github.com/amcdnl/b52e9dd11850eeb8de8f): P – Endless

+0

Это полный код для запроса ajax. –

ответ

0

Сигнатура функции обратного вызова нагрузки:

(ev: Event) => any 

Где Event тривиальное событие, которое выглядит следующим образом:

interface Event { 
    ... 
    currentTarget: EventTarget; 
    ... 
} 

И EventTarget является:

interface EventTarget { 
    addEventListener(type: string, listener?: EventListenerOrEventListenerObject, useCapture?: boolean): void; 
    dispatchEvent(evt: Event): boolean; 
    removeEventListener(type: string, listener?: EventListenerOrEventListenerObject, useCapture?: boolean): void; 
} 

Который не имеет response Недвижимость.

Вот почему вы получаете эту ошибку, и как с ней бороться, почему бы вам просто не использовать объект запроса?
У этого есть свойства response и responseText, которые вы можете использовать, нет необходимости получать вещи от объекта события, который получает обратный вызов.

Смежные вопросы