函数未定义但可以在控制台中使用(Webpack)
Functions not defined but can be used in console (Webpack)
使用 webpack 时我遇到函数问题
这样定义的函数根本不可用:
function foo() {
console.log("bar")
}
当我定义这样的函数时,它在控制台中运行:
window.foo = function() {
console.log("bar")
}
但是从
这样的代码调用时它不起作用
window.test = function () {
foo()
};
<button onclick="test()">
这是预期的行为。 Webpack 为每个模块创建一个单独的范围。
在全局上下文中声明 variables/functions/etc 的正确方法是使用 window
对象。
请记住,您不需要全局上下文 (window) 即可在模块之间共享函数。
您可以使用 export 语句公开模块中的函数,并在项目中的其他模块上使用它们。
使用 webpack 时我遇到函数问题
这样定义的函数根本不可用:
function foo() {
console.log("bar")
}
当我定义这样的函数时,它在控制台中运行:
window.foo = function() {
console.log("bar")
}
但是从
这样的代码调用时它不起作用window.test = function () {
foo()
};
<button onclick="test()">
这是预期的行为。 Webpack 为每个模块创建一个单独的范围。
在全局上下文中声明 variables/functions/etc 的正确方法是使用 window
对象。
请记住,您不需要全局上下文 (window) 即可在模块之间共享函数。 您可以使用 export 语句公开模块中的函数,并在项目中的其他模块上使用它们。