Как решить ошибку на addEventListener в машинописной записи - PullRequest
0 голосов
/ 24 февраля 2020
class ScriptLoader {

    private loadedScripts : Array<string> = new Array<string>();

    constructor(private head = document.getElementsByTagName('head')[0], ) {
        if (typeof(head) == "undefined")
            alert("A página não contém o elemento head.");
    }

    load(scripts: Array<string>) {
        scripts.forEach(element => {
            let node = document.createElement('script') as HTMLScriptElement;
            node.type = 'text/javascript';
            node.charset = 'utf-8';
            node.async = true;

            node.addEventListener('load', (el: HTMLScriptElement, ev: Event) => this.onLoad(el, ev), false);

            node.src = element;

            this.head.appendChild(node);
        });
    }

    onLoad(el: HTMLScriptElement, ev: Event) : any {
        this.loadedScripts.push(el.src)
    }  
}  

сообщение об ошибке:

Никакая перегрузка не соответствует этому вызову. Перегрузка 1 из 2, '(тип: "load", listener: (this: HTMLScriptElement, ev: Event) => any, options ?: boolean | AddEventListenerOptions | undefined): void', возникла следующая ошибка. Аргумент типа '(el: HTMLScriptElement, ev: Event) => any' не может быть назначен параметру типа '(this: HTMLScriptElement, ev: Event) => any'. Перегрузка 2 из 2, '(тип: string, listener: EventListenerOrEventListenerObject, options ?: boolean | AddEventListenerOptions | undefined): void', вызвала следующую ошибку. Аргумент типа '(el: HTMLScriptElement, ev: Event) => any' не может быть назначен параметру типа 'EventListenerOrEventListenerObject'. Тип '(el: HTMLScriptElement, ev: Event) => any "нельзя назначить типу" EventListener ".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...