Versucht braintree-web in Angular2 zu integrieren

8

Ich versuche das Braintree SDK (braintree-web) in meiner Angular2 App zu verwenden. Ich würde mich über Hinweise freuen, wie das funktioniert. Ich denke, es liegt daran, dass ich das Braintree-Web-Modul nicht importiere, aber ich kann auch nicht herausfinden, wie ich dazu komme. Ich kann alle Exporte im gesamten Modul finden.

Hier bin ich:

Ich habe die braintree-web-Bibliothek und eine Typisierungsdatei, die ich gefunden habe, importiert.

%Vor%

Ich habe versucht, das JS-Beispiel zu hacken, das Braintree in einer Angular2 TS-Komponente bereitstellt, aber ich bekomme immer einen Fehler:

  

AUSNAHME: Fehler: Nicht abgefangen (in Versprechen): AUSNAHME: Fehler in   ./UpaccountComponent Klasse UpaccountComponent - Inline-Vorlage: 5: 7   ORIGINAL EXCEPTION: TypeError: this.braintree.setup ist keine Funktion

Hier ist die .ts Datei.

%Vor%     
SeekingMoneky 01.11.2016, 03:47
quelle

4 Antworten

3

Ich bin mir nicht sicher, ob braintree-web speziell verwendet wird, aber wenn Sie webpack verwenden, entfernen Sie die Zeilen declare var braintree:any; und braintree = require('BrainTreeWeb');

Sie müssen auch die Datei braintree-web / index.js zum Bundle hinzufügen, sofern sie kein UMD-Modul haben.

Von einem kurzen Blick auf braintree-web sieht es so aus, als wäre braintree.setup(..) keine Funktion. So etwas könnte gleichwertig sein:

%Vor%

Bei den Paketinstallationen müssen Sie --save-dev den Typen install hinzugefügt haben.

    
Fiddles 01.11.2016 06:09
quelle
2

Ich habe den Gehirnbaum auf die gleiche Weise integriert, wie Sie es getan haben, und es funktioniert. Ich habe gerade einen weiteren Befehl installiert

zuerst installieren

%Vor%

installieren Sie dann

%Vor%

und verwenden

%Vor%

Erneut, wenn es fragt, dass braintree nicht definiert ist, dann entferne declare var braintree:any; und ersetze den folgenden Code

%Vor%

mit

%Vor%

Bearbeiten:

deklarieren Sie einfach die Variable nach dem Import declare var braintree:any; , wenn Sie mit angular 4 arbeiten, dann deklarieren Sie declare var require: any;

    
Malhari 08.12.2016 11:36
quelle
0

Verweisen Sie auf Folgendes: Refring von JS-Bibliotheken von Drittanbietern in angular 2

Es ist eine universelle Lösung. Sie müssen nicht einmal irgendwelche npm-Pakete verwenden. Verweisen Sie einfach auf BrainTree JS libarary in index.html und folgen Sie den oben genannten Schritten. Es ist für jede JS-Bibliothek anwendbar.

    
Maverik 28.06.2017 14:55
quelle
0

Sie können es auch importieren über:

%Vor%     
rolu 10.11.2017 03:41
quelle