2016-11-30 11 views
0

私は自分のクラスの1つをグローバルに公開しようとしています。しかし、eslintは "ウィンドウ"は定義されていないと言っています。私はeslintをオフにしてもまだクラスにアクセスできないので、問題はありません。Webpack:ウィンドウが定義されていません

これは私のWebPACKの設定です:

export default { 
    output: { 
    filename: 'dist/client-bundle.js', 
    }, 
    devtool: 'source-map', 
    module: { 
    loaders: [ 
     { 
     test: /\.jsx?$/, 
     loader: 'babel-loader', 
     exclude: [/node_modules/], 
     }, 
    ], 
    }, 
    resolve: { 
    extensions: ['', '.js', '.jsx'], 
    }, 
}; 

私も私のpackage.json"env": { "browser": true }を設定していると私はclient-bundle.jswindow.myClass = classNameを見ることができますが、それでも、それは動作しません。

答えて

0

この設定を変更すると、問題が解決しました。また、グローバルにアクセスできない理由の1つはwebpack-dev-serverです。

export default { 
    output: { 
    filename: 'dist/client-bundle.js', 
    libraryTarget: 'var', 
    library: 'className' 
    }, 
    devtool: 'source-map', 
    module: { 
    loaders: [ 
     { 
     test: /\.jsx?$/, 
     loader: 'babel-loader', 
     exclude: [/node_modules/], 
     }, 
    ], 
    }, 
    resolve: { 
    extensions: ['', '.js', '.jsx'], 
    }, 
}; 
+0

正解としてあなた自身の答えを記入してください –

関連する問題