我有一个主要的 JS 脚本,看起来像这样..
;(function ($) {
<main javascript>
}(jQuery));
我刚刚创建了自己的外部库脚本,如下所示..
;(function ($) {
var myClass = function() {
<code>
};
}(jQuery));
我想要做的是将外部库传递到主 JS 脚本中,如下所示:
;(function ($, myClass) {
<main javascript>
}(jQuery, myClass));
但是它说 myClass 未定义。我该如何定义它?
(就我如何插入代码而言,它使用 Wordpress 的注册/排队脚本。这两个文件都是“事件的”,所以如果我向它们都发出警报,那么它们都会被解雇,我我只是在努力将两者链接在一起,以便我可以在主 JS 文件中使用 myClass 中的脚本)。
谢谢
最佳答案
myClass
的定义范围为
(function ($) {
...
}(jQuery));
所以除非该库中的代码这样做
this.myClass = myClass;
或者其他将其显式导出到全局范围的东西,那么就无法从主脚本中引用它。
<小时/>How do I declare a namespace in JavaScript?对于在 JavaScript 中向其他代码公开接口(interface)的各种方法的优缺点进行了大量讨论。
关于javascript - 外部JS未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30415085/