【问题标题】:Typescript | TypeError: __WEBPACK_IMPORTED_MODULE_1_signature_pad__ is not a constructor打字稿 | TypeError: __WEBPACK_IMPORTED_MODULE_1_signature_pad__ 不是构造函数
【发布时间】:2023-03-03 16:10:01
【问题描述】:

我目前正在开发一个 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>

当我启动浏览器页面时出现以下错误: ERROR Error: Uncaught (in promise): TypeError: WEBPACK_IMPORTED_MODULE_1_signature_pad is not a constructor

我也尝试过使用 dimpu 的 angular2-signature-pad,但基本上出现了同样的错误。

【问题讨论】:

    标签: javascript angular typescript signaturepad


    【解决方案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);
    

    【讨论】:

    • 这导致:“错误错误:未捕获(承诺中):ReferenceError:未定义签名板”
    猜你喜欢
    • 2018-07-18
    • 1970-01-01
    • 1970-01-01
    • 2022-01-15
    • 2020-07-17
    • 1970-01-01
    • 2019-08-14
    相关资源
    最近更新 更多