2017-11-13 2 views
1

Ich baue eine App mit electron-forge, das ist nicht wirklich wichtig, außer dass es die .babelrc zu .compilerc in meiner Projektkonfiguration erweitert.Babel Plugin-Modul Alias ​​funktioniert nicht mit erfordern ("reagieren")

Ich bin mit infernojs/inferno-compat und babel-plugin-module-resolver, um alias Verweise auf react zu inferno-compat

.compilerc/.babelrc

"plugins": ["babel-plugin-inferno", "transform-async-to-generator", "transform-es2015-classes", 
      ["module-resolver", { 
        "root": ["."], 
        "alias": { 
         "react": "inferno-compat", 
         "react-dom": "inferno-compat" 
        } 
       }]], 

Bisher funktioniert das gut w/.jsx Dateien, aber wenn ich ein Paket installieren , wie react-bootstrap-modal, die eine Zeile wie folgt hat:

Modal.js:

ich einen Fehler:

Uncaught Error: Cannot find module 'react' at Module._resolveFilename (module.js:485:15)

Antwort

1

Offenbar aliasing modules in packages does not work, weil Babel Module von Drittanbietern standardmäßig nicht kompilieren.

war meine Abhilfe inferno-compat zu react Symlink und react-dom:

cd node_modules 
ln -s inferno-compat react 
ln -s inferno-compat react-dom 

Als Randbemerkung: Git schön mit Symlinks funktioniert. Wenn Sie diese symbolischen Links einchecken, behandelt Git sie als normale Dateien und löst sie nicht auf.

Verwandte Themen