javascript-顶部变量声明为globaly(ES6 Babel)
作者:互联网
是否存在从ES6中的模块声明函数全局性的方法?
如果我声明这样的变量:
global.variablename = function() {};
global.variablename2 = function() {};
我在主文件中导入的所有模块都将提供此功能.
但是,如何将所有功能保存到文件中并全局导入呢?如果我将其导入,则无法从外部插件访问功能.当他们调用该函数时,其结果不确定.
提前致谢!
编辑:正如我在评论中写道,我有这个问题:
当我创建一个不带干扰的ajax的ajax表单时,我为complete事件设置了回调,如下所示:
@using (Ajax.BeginForm("Action", "Controller", null,
new AjaxOptions { OnComplete = "ajaxCallback"},
new { id = "ajaxForm", @class = "" }))
如果我在主文件中这样声明“ ajaxCallback”函数:
global.ajaxCallback = function() {}
回调工作正常.如果我将其放置在模块中并导入(在主文件中),则它不起作用,因为不在全局环境中.我必须从模块中但在全局上下文中导入它.可能吗?
解决方法:
将变量附加到window可以使用,但不建议使用,例如:
window.someVariable =’foo’
或者,在webpack中,您可以通过以下方式在输出中使用library属性:
https://webpack.github.io/docs/library-and-externals.html#examples
标签:ecmascript-6,global-variables,javascript,function 来源: https://codeday.me/bug/20191119/2039913.html