main.js 具有以下代码
APP.open = (function ($) {
return {
people: (function() {
return {
gender: function() {},
age: function() {}
}
})()
};
}(jQuery));
和 exteral.js 有:
APP.open = (function ($) {
return {
people: (function() {
return {
race: function() {}
}
})()
};
}(jQuery));
最后加载了exteral.js ,因此会覆盖 main.js 。
我的问题是,如何编写 exteral.js 以停止覆盖 人 方法。我想扩展APP.open.people
方法。
答案 0 :(得分:1)
所以代码看起来像:
var LS = LS || {};
LS.open = function () {...}
并打电话给它:
LS.open();
您可以找到有关JS模块here的更多信息。
答案 1 :(得分:1)
添加特定方法,而不是替换整个APP.open
命名空间:
APP.open.people.race = function() {};
如果您不知道存在哪些命名空间,请先添加它们:
if (!'open' in APP) APP.open = {};
if (!'people' in App.open) App.open.people = {};
答案 2 :(得分:0)
在你的external.js中你可以尝试这样的事情:
var APP = APP || {};
APP.open.people = function(){return {race:function(){}}};