2016-08-03 34 views
3

私は反応しているアプリケーションに取り組んでいます。どこでwebpackとbabel loaderを使用していますか? 私の反応のアプリケーションでは、何度もimport文を使ってうまく動作しています。Uncaught SyntaxError: `予期しないトークンのインポート

今私は別のスタンドアロンのアプリケーションが正常に動作しています。 npmを使用して、スタンドアロンアプリケーションを反応アプリケーションにインストールします。だから私は行う

let standAloneApplication = require("my_stand_alone_application") 

しかし、私はstandAloneApplicationの中にインポートエラーを取得します。どこに行がある import controller from "./controller" // Main.js:1Uncaught SyntaxError:予期しないトークンのインポート

Reactアプリケーションのインポートステートメントは正常に動作します。スタンドアローンのアプリケーションも単独でうまく動作します。しかし、一緒にそれは

import {Controller} from "./Controller/index.js" 

export class Main() { 

} 
+0

次の内容のファイル.babelrcを使用してみてくださいでした[あなたのpath.resolveは 'htlm'であってはならないと思います。 –

+0

からの 'import {Controller} 'の後に'; 'があってはいけません./Controller/index.js 「? (ただ疑問に思う) –

+0

es2015が正しく動作していれば、任意である –

答えて

4

お知らせお使いのローダセットアップでexclude: /node_modules/をスタンドアロンアプリケーションからの私のWebPACKファイル

var webpack = require('webpack'); 
var path = require('path'); 

var BUILD_DIR = path.resolve(__dirname, 'html'); 
var APP_DIR = path.resolve(__dirname, 'html'); 

var config = { 
    entry: APP_DIR + '/app.js', 
    output: { 
    path: BUILD_DIR, 
    filename: 'bundle.js' 
    }, 
    devtool: "source-map", 
    node: { 
    fs: "empty" 
    } , 
     module : { 
    loaders : [ 
     { 
     test : /\.js?/, 
     include : APP_DIR, 
     exclude: /node_modules/, 
     loaders: ['babel?presets[]=react,presets[]=es2015,plugins[]=transform-decorators-legacy,plugins[]=transform-class-properties,plugins[]=transform-export-extensions'], 
     }, 

     { test: /\.json$/, loader: "json" } 
    ] 
    } 
} 

module.exports = config; 

main.jsコードでSyntaxError

を与えています。

npmを使用してアプリ/モジュールをインストールしたため、そのディレクトリに配置されています。除外されているため、Babelによって切り抜かれません。おそらく、

が、私はわからないんだけど、あなたはinclude行に明示的に追加することができます。 { 「プリセット」:

include : [ 
    APP_DIR, 
    path.resolve(__dirname, 'node_modules/my_stand_alone_application') 
] 
+0

魅力のように働きます –

+0

これは私にとってはうまくいますが、私のライブラリ(またはAshishaのスタンドアローン型アプリケーション)でビルドをセットアップし、 app)に含まれています。そうすれば、他のnpmパッケージと同じように、 'dist'バージョンはそのまま使用できます。 – seanTcoyote

関連する問題