Instascan: ES6-Import schlägt fehl

Erstellt am 20. Juli 2017  ·  5Kommentare  ·  Quelle: schmich/instascan

Ich versuche, die Bibliothek über eine ES6-Importanweisung import InstaScan from 'instascan' zu importieren, die den folgenden Fehler auslöst:

ERROR in ./node_modules/instascan/src/zxing.js
Module not found: Error: Can't resolve 'fs' in 'C:\projects\my_project\node_modules\instascan\src'
 @ ./node_modules/instascan/src/zxing.js 4:725-738 4:313578-313591
 @ ./node_modules/instascan/src/scanner.js
 @ ./node_modules/instascan/index.js
 @ ./src/components/qrcode-scanner.component.js
 @ ./stories/qrcode-scanner.component.story.js
 @ ./stories/index.js
 @ ./.storybook/config.js

Ist es nur mein npm-Setup, das wieder durcheinander gebracht wird, oder ist diese Bibliothek nicht dafür gedacht, auf diese Weise verwendet zu werden?
Wahrscheinlich ist dies nur ein Webpack, der die Dinge durcheinander bringt ...

Um eine einfache reaktionsbasierte App mit einem der Create-React-Skripte zu erstellen, starten Sie den Dev-Server und versuchen Sie, sie von dort zu importieren und/oder anzufordern.

Windows 10 1607 Build 14393.1480
Npm 5.03
Das npm-Modul fs wird global und lokal im Projektordner installiert.

Hilfreichster Kommentar

fügen Sie dies zu Ihrer Webpack-Konfiguration hinzu:

module.exports = {
  node: {
    fs: "empty"
  },
  entry: {
    app: [
      './src/main.js'
    ]
  },
...

Wie in https://github.com/pugjs/pug-loader/issues/8#issuecomment -55568520

Alle 5 Kommentare

Ich bin auf dieses Problem auch beim Reagieren gestoßen. Ich habe es geschafft, es mit Suchen/Ersetzen in instascan/src/zxing.js . Suchen Sie die beiden folgenden Sätze und ersetzen Sie beide durch leere Zeichenfolgen.

var fs=require("fs");
var nodeFS=require("fs");

Ich bin ehrlich gesagt nicht sehr vertraut mit zxing.js, daher weiß ich nicht, warum das funktioniert.

Ich bin mir nicht sicher, warum auf Webbrowser ausgerichtete Bibliotheken 'fs' verwenden sollten, aber Sie haben absolut Recht, dass dies das Problem war!
Vielen Dank dafür!
Ist dafür eine PR angebracht oder wird @schmich dies berücksichtigen?

Leider unterbricht diese Bibliothek meinen Webpack-Build-Prozess (gleiches Problem wie oben). Der Hack von @rshepp funktioniert, ist aber bei der Arbeit mit mehreren Personen an einem Projekt sehr unpraktisch.

@axed Kannst du eine PR machen? Das wäre toll :)

fügen Sie dies zu Ihrer Webpack-Konfiguration hinzu:

module.exports = {
  node: {
    fs: "empty"
  },
  entry: {
    app: [
      './src/main.js'
    ]
  },
...

Wie in https://github.com/pugjs/pug-loader/issues/8#issuecomment -55568520

fügen Sie dies zu Ihrer Webpack-Konfiguration hinzu:

module.exports = {
  node: {
    fs: "empty"
  },
  entry: {
    app: [
      './src/main.js'
    ]
  },
...

Wie in pugjs/pug-loader#8 (Kommentar)

alhamdulillah bisa :)

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

deadmanwalking74 picture deadmanwalking74  ·  7Kommentare

igun997 picture igun997  ·  4Kommentare

schmich picture schmich  ·  4Kommentare

itdpong picture itdpong  ·  5Kommentare

schmich picture schmich  ·  13Kommentare