Signature_pad: __WEBPACK_IMPORTED_MODULE_1_signature_pad__λŠ” μƒμ„±μžκ°€ μ•„λ‹™λ‹ˆλ‹€.

에 λ§Œλ“  2018λ…„ 04μ›” 11일  Β·  8μ½”λ©˜νŠΈ  Β·  좜처: szimek/signature_pad

λ‚΄ angular cli 4.0 μ•±μœΌλ‘œ angular2-signature-pad λͺ¨λ“ˆμ„ κ°€μ Έμ™”μŠ΅λ‹ˆλ‹€. https://github.com/dimpu/angular2-signature-pad 의 지침을 따라 μƒˆ λͺ¨λ“ˆλ‘œ κ°€μ Έμ™”μŠ΅λ‹ˆλ‹€(μ•± λͺ¨λ“ˆ μ•„λ‹˜). 이λ₯Ό 톡해 μ„œλͺ… νŒ¨λ“œ μΊ”λ²„μŠ€κ°€ μ™„λ²½ν•˜κ²Œ λ Œλ”λ§λ©λ‹ˆλ‹€. λΆˆν–‰νžˆλ„ λ‹€μŒ 였λ₯˜κ°€ λ°œμƒν•˜κ³  μ˜ˆμƒλŒ€λ‘œ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

ERROR TypeError: __WEBPACK_IMPORTED_MODULE_1_signature_pad__ is not a constructor
at SignaturePadComponent.ngAfterViewInit (signature-pad.component.js:60)
at callProviderLifecycles (core.js:12702)
at callElementProvidersLifecycles (core.js:12669)
at callLifecycleHooksChildrenFirst (core.js:12652)
at checkAndUpdateView (core.js:13807)
at callViewAction (core.js:14149)
at execEmbeddedViewsAction (core.js:14107)
at checkAndUpdateView (core.js:13799)
at callViewAction (core.js:14149)
at execComponentViewsAction (core.js:14081)

SignaturePad μ΄ˆκΈ°ν™”μ— λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆκΉŒ?

μ„œλͺ… νŒ¨λ“œ ꡬ성 μš”μ†Œμ˜ 두 번째 μ€„μ—μ„œ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

SignaturePadComponent.prototype.ngAfterViewInit = function () {
        this._canvas = this._el.nativeElement.querySelector("canvas");
        this._signaturePad = new SignaturePad(this._canvas);
    }; 

"각도/cli": "1.6.8"
"angular2-signature-pad": "^1.0.2"
"signature_pad": "^2.3.2"
Angular CLIκ°€ μžˆλŠ” Google Chromeμ—μ„œ

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

이 라이브러리의 Angular 버전을 μœ μ§€ κ΄€λ¦¬ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μ‹€μ œλ‘œ SignaturePad κ°€ μžˆλŠ”μ§€ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€. μ‹€μ œ μƒμ„±μžμΈ default 속성이 μžˆλŠ” 개체일 수 μžˆμœΌλ―€λ‘œ this._signaturePad = new SignaturePad.default(this._canvas); 둜 λ³€κ²½ν•˜λ©΄ 문제λ₯Ό ν•΄κ²°ν•  수 μžˆμŠ΅λ‹ˆλ‹€. , ν•˜μ§€λ§Œ 그것은 좔츑일 λΏμž…λ‹ˆλ‹€.

μ‚¬μš© 쀑인 TypeScript의 버전을 확인할 수 μžˆμŠ΅λ‹ˆκΉŒ? TS 2.7+μ—μ„œ 이 라이브러리(Angular λΌμ΄λΈŒλŸ¬λ¦¬κ°€ μ•„λ‹˜)λ₯Ό ν™•μΈν–ˆλŠ”λ° μ œλŒ€λ‘œ μž‘λ™ν•©λ‹ˆλ‹€.

TS둜 μž‘μ„±λ˜μ—ˆμœΌλ©° TS 2.7+μ—μ„œ μž‘λ™ν•΄μ•Ό ν•˜λŠ” signature_pad 베타 λ¦΄λ¦¬μŠ€λ„ μžˆμŠ΅λ‹ˆλ‹€.

λͺ¨λ“  8 λŒ“κΈ€

이 라이브러리의 Angular 버전을 μœ μ§€ κ΄€λ¦¬ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μ‹€μ œλ‘œ SignaturePad κ°€ μžˆλŠ”μ§€ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€. μ‹€μ œ μƒμ„±μžμΈ default 속성이 μžˆλŠ” 개체일 수 μžˆμœΌλ―€λ‘œ this._signaturePad = new SignaturePad.default(this._canvas); 둜 λ³€κ²½ν•˜λ©΄ 문제λ₯Ό ν•΄κ²°ν•  수 μžˆμŠ΅λ‹ˆλ‹€. , ν•˜μ§€λ§Œ 그것은 좔츑일 λΏμž…λ‹ˆλ‹€.

μ‚¬μš© 쀑인 TypeScript의 버전을 확인할 수 μžˆμŠ΅λ‹ˆκΉŒ? TS 2.7+μ—μ„œ 이 라이브러리(Angular λΌμ΄λΈŒλŸ¬λ¦¬κ°€ μ•„λ‹˜)λ₯Ό ν™•μΈν–ˆλŠ”λ° μ œλŒ€λ‘œ μž‘λ™ν•©λ‹ˆλ‹€.

TS둜 μž‘μ„±λ˜μ—ˆμœΌλ©° TS 2.7+μ—μ„œ μž‘λ™ν•΄μ•Ό ν•˜λŠ” signature_pad 베타 λ¦΄λ¦¬μŠ€λ„ μžˆμŠ΅λ‹ˆλ‹€.

예, this._signaturePad = new SignaturePad.default(this._canvas); 와 ν•¨κ»˜ μž‘λ™ν•©λ‹ˆλ‹€.
szimek κ°μ‚¬ν•©λ‹ˆλ‹€.

@erangaapp @szimek μ—¬λŸ¬λΆ„ new SignaturePad 잘 μ§€λ‚΄μ„Έμš”? μˆ˜μž…ν•˜λŠ” 것이 μžˆμŠ΅λ‹ˆκΉŒ? λ‚˜λŠ” λ˜ν•œ https://github.com/dimpu/angular2-signature-pad λ₯Ό μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

signature_padμ—μ„œ κ°€μ Έμ˜¬ 수 μžˆμŠ΅λ‹ˆλ‹€.

npm install --save signature_pad
import * as SignaturePad from 'signature_pad';

@erangaapp 덕뢄에 μ•Œμ•˜μŠ΅λ‹ˆλ‹€. 또 λ‹€λ₯Έ μ§ˆλ¬Έμž…λ‹ˆλ‹€. ν”„λ‘œμ νŠΈμ˜ node_modules μ—μ„œ 라인을 this._signaturePad = new SignaturePad.default(this._canvas); 둜 λ³€κ²½ν•˜μ…¨μŠ΅λ‹ˆκΉŒ? lib μ½”λ“œ 자체 λ‚΄λΆ€? μ•„λ‹ˆλ©΄ ν”„λ‘œμ νŠΈ μ½”λ“œμ—μ„œ ν•  수 μžˆμŠ΅λ‹ˆκΉŒ?

λ‚˜λŠ” μ•„λž˜λ₯Ό 톡해 그것을 μ–»μ—ˆλ‹€.

window.SignaturePad = require('signature_pad').default

this._signaturePad = new SignaturePad.default(this._canvas);

이것이 λ‚˜λ₯Ό μœ„ν•΄ μΌν•œ μœ μΌν•œ κ²ƒμ΄μ—ˆλ‹€

이것이 λˆ„κ΅¬μ—κ²Œλ‚˜ 도움이 λ˜λŠ” 경우λ₯Ό λŒ€λΉ„ν•˜μ—¬ Angular 8μ—μ„œ μ„œλͺ… νŒ¨λ“œλ₯Ό μž‘λ™μ‹œν‚€κΈ° μœ„ν•΄ μˆ˜ν–‰ν•œ μž‘μ—…μ€ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

$ npm install --signature_pad μ €μž₯

멋진 ꡬ성 μš”μ†Œ.html:

<div class="wrapper">
  <canvas id="signature-pad" class="signature-pad" width=400 height=200 style="border: 2px solid blue"></canvas>
</div>

멋진 ꡬ성 μš”μ†Œ.ts:

import { Component, OnInit, ElementRef  } from '@angular/core';
import * as SignaturePad from 'signature_pad'
...
export class CoolComponent implements OnInit {
    _canvas
    _signaturePad
    constructor(private el: ElementRef) { }

    ngOnInit() {

    }

       ngAfterViewInit(){
         this._canvas = this.el.nativeElement.querySelector("canvas");
         this._signaturePad = new SignaturePad.default(this._canvas);
      }

}

이 라이브러리λ₯Ό ν•¨κ»˜ λ§Œλ“€μ–΄ μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€, @szimek!

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰