Машинопись | Ошибка типа: __WEBPACK_IMPORTED_MODULE_1_signature_pad__ не является конструктором

В настоящее время я работаю над проектом Angular2 и пытаюсь использовать библиотеку JS ( https://github.com/szimek/signature_pad) для ввода подписи.

Я попытался использовать библиотеку как есть, с моим кодом следующим образом:

// .ts file
import * as SignaturePad from 'signature_pad';

export class ... {
    private signaturePad: SignaturePad;

    ngOnInit() {
        let canvas = document.querySelector("canvas");
        this.signaturePad = new SignaturePad(canvas);
    }
}

,

// .html file
<div...>
    <canvas></canvas>
</div>

и я получаю следующую ошибку при запуске страницы браузера: Ошибка ОШИБКА: Uncaught (в обещании): TypeError: WEBPACK_IMPORTED_MODULE_1_signature_pad не является конструктором

Я также попытался использовать angular2-signature-pad dimpu, но та же самая ошибка, по существу, возникает.

1 ответ

Решение

Если у вас есть наборы для signature_pad (npm install --save-dev @types/signature_pad), он должен быть импортирован и использован, как показано ниже signature_pad не имеет экспортируемых членов и только объявляет класс SignaturePad в текущую область:

import 'signature_pad';

// ...
let canvas = document.querySelector("canvas");
this.signaturePad = new SignaturePad(canvas);
Другие вопросы по тегам