Не знаком с Zend Studio, но из того, что вы говорите, не ясно, работает ли он только на глобальных или нет. То есть если я вас правильно понял, это работает:
// global.js
var App = {
objectA: {
method1: function() {},
method2: function() {}
},
objectB: {
method1: function() {},
method2: function() {}
}
};
// extend.js
var Extend = {
anotherMethod: function() {}
};
Однако, если вы добавите это, сработает ли это?
// extend.js
...
var More = {
streetWithNoName: false,
};
More.helloWorld = [1, 2, 3]
Если вы не можете получить автозаполнение для helloWorld
на More.
(и, поскольку оно работает на Extend
, вы должны получить автозаполнение для streetWithNoName
), то, вероятно, Zend не выполняет Глобальное завершение, которое, я думаю, в любом случае сделать очень сложно. Если это возможно, то вы всегда можете сделать:
var innerAppExtend = App.Extend = { ... };
как обходной путь, если это, конечно, приемлемо для вас.