私はボタンで基本的なHTMLページがあります。基本のWebPACK - キャッチされない参照エラー:未定義
<!DOCTYPE html>
<html lang="en">
<head>
...
</head>
<body>
<button id="button" onclick="uclicked()">Click me</button>
<script src="./bundle.js"></script>
</body>
</html>
とapp.js
:
//(function(){
console.log('started up')
function uclicked(){
console.log('You clicked');
}
//})();
のWebPACKがインストールされているとwebpack --watch
を成功する。 webpack.config.jsは次のとおりです。
module.exports={
entry: './app.js',
output: {
path: __dirname,
filename: 'bundle.js'
}
}
私はconsole.log
が作動しているページをロードするが、私はボタンを押したときに、私はUncaught ReferenceError: uclicked is not defined
を得るとき。
<script src="./bundle.js"></script>
を<script src="./app.js"></script>
に置き換えて、webpackをバイパスすると、ボタンがうまくクリックされます。なぜ、この基本的なWebpackのセットアップは動作しませんか?
'uclicked'は、グローバル関数を参照していますが、デフォルトではWebPACKのは、グローバルスコープを保護し、生命維持のあなた' bundle'を包み込むます。あなたのコードで 'addEventListener'を使うか、' expose-loader'を使ってアプリケーションを公開オブジェクトとして公開してください。https://github.com/webpack/expose-loader –