我有一个带有按钮的基本HTML页面:
<!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设置不起作用?
当您在webpack上运行文件时,webpack会尝试不要乱扔全局范围,因此默认情况下该功能将不会在全局范围内可用。
如果希望在JS文件范围之外访问该函数,则应将其放在全局范围内。
要不就: