2016-11-21 4 views
0

Ich baue eine NW.js App, derzeit mit babel-standalone und React. Ich kann den ES6-Import verwenden, aber der ES6-Export funktioniert nicht, die Konsole spuckt unexpected token export aus. Was ist los?NW.js + Babel: ES6 Import funktioniert, aber nicht exportieren?

index.html:

<html> 
<head> 
    <meta charset="utf-8"> 
    <script src="assets/react.min.js" charset="utf-8"></script> 
    <script src="assets/react-dom.min.js" charset="utf-8"></script> 
    <script src="assets/babel.min.js" charset="utf-8"></script> 
</head> 
<body> 
    <script type="text/babel" src="script/App.js"></script> 
</body> 
</html> 

(ja, ja Babel funktioniert, da Reagieren Sachen innen OK läuft)

In app.js:

import Lib from "./script/lib.js"; 

(und es ist in der Tat zu exportieren lib.js korrekt, da das die Datei ist, die für den Fehler verantwortlich ist)

In script/lib.js:

Ich bin mir bewusst, dass ich stattdessen Knotenmodule oder sogar HTML-Skript laden kann, aber das ist neben dem Punkt. Ich möchte wissen, warum export nicht funktioniert, auch wenn Babel scheint nicht gebrochen zu sein, und sogar import funktioniert gut.

Antwort

1

Das Problem ist, dass Babel keine Dateien sehen, die über require geladen wurden, und sie geladen sind, wie sie sind, ohne transpilation.

Es kann mehrere Möglichkeiten geben, um dies zu umgehen, aber die einfachste ist die Verwendung von Babel im Build-Schritt.

Verarbeiten Sie den Quellcode, und laden Sie dann den bearbeiteten Code nw.js Umgebung. Das Beispiel, wie man das macht, finden Sie unter

+0

Das könnte meine Probleme erklären. Ich würde gerne wissen, was die anderen Problemumgehungen sind, da sich Babel-Standalone in der Entwicklung ziemlich wohl fühlt und ich jetzt lieber nicht mit Gulp oder Webpack umgehen möchte. – Rafael

Verwandte Themen