J'ai une application Angular2 dans Electron. Maintenant, je voudrais utiliser la bibliothèque @pokusew/pcsclite
Pour utiliser la fonctionnalité NFC. Cette bibliothèque utilise des modules Node.js natifs.
Lorsque j'essaie de exiger la bibliothèque dans mon component.ts comme ceci:
declare var pcsclite: any;
var pcsclite = require('../../../node_modules/@pokusew/pcsclite/');
Je reçois une erreur qui dit:
erreur TS6143: le module '../ ..' a été résolu en '../../lib/pcsclite.js', mais '--allowJs' n'est pas défini.
D'un autre côté, si j'essaie d'importer la bibliothèque via un <\ script> -Tag dans l'index.html, j'obtiens une erreur qui dit:
ZoneAwareError Erreur: impossible de localiser le fichier de liaisons. A tenté:...
Enfin, si je var pcsclite = require('@pokusew/pcsclite');
dans main.js
, Alors cela fonctionne, mais je n'y ai pas accès depuis mon Angular app.
Ajoutez l'option allowJs
dans votre tsconfig.json
comme ça:
comme fabian lauer dit aussi ajouter l'option outDir
pour spécifier où seront vos fichiers compilés:
{
"compilerOptions": {
"outDir": "./built", <--- add this
"allowJs": true, <--- and this
"target": "es5"
},
"include": [
"./src/**/*"
]
}