【发布时间】:2012-02-13 17:38:14
【问题描述】:
我有一个javascript文件如下
(function (rpc) {
rpc.loadHomeBanner = rpc_loadHomeBanner;
function rpc_loadHomeBanner(){
// AN is used by Sencha Animator as an Animation variable
rpc.AN ={};
rpc.AN.Controller = {
setConfig: function(configData) {
// update config crap
}
};
var configData = {
// config crap
};
rpc.AN.Controller.setConfig(configData);
}
})(rpc);
现在在页面的第一次加载时,我调用
rpc.loadHomeBanner();
它会在我需要的时候启动。
问题是我有一个 handleOrientationChange 方法需要从命名空间外部更新配置(由于开销,我不想触发 loadHomeBanner 方法)。
handleOrientationChange: function(){
// Updating the config for the animation to ensure appropriate width.
var configData = {
// config crap
};
rpc.AN.Controller.setConfig(configData);
}
如何在闭包范围之外调用rpc.AN.controller.setConfig?
【问题讨论】:
-
您正在从外部传递
rpc,因此您应该能够从rpc可见的任何地方调用rpc.AN.controller.setConfig。实际上,我在这里没有看到关闭的任何优势。 -
@FelixKling:我希望这不是该模块中的所有代码,Chase 正在展示什么是必要的?
标签: javascript namespaces private-methods