我正在运行一个角度应用程序,现在其他一些团队想要将他们的模块添加到我的应用程序中,而我不想更改现有的应用程序代码。所以,我正在考虑向该团队公开某种xdk,以便他们可以构建自己的角度模块,将其添加到xdk和我的应用程序中 将xdk作为其依赖项,将检查是否有任何新模块并自动将其包含在我的应用程序中。
我正在考虑这种方法:
//json file with app details
{
"app1": {
appPath: 'app1.js',
moduleName: 'app1Module'
},
"app2": {
appPath: 'app2.js',
moduleName: 'app2Module'
}
}
//xdk app - no code change required
var basePath = 'https://path/to/cdn/<app_name>';
var xdkApp = angular.module('xdkApp', []);
/*
xhr to fetch json file and include all the available modules
*/
//main application - no code change required
var mainApp = angular.module['mainApp', [xdkApp]];
在这种方法中,另一个团队将创建他们的角度应用程序并将他们的代码上传到cdn并将该条目更新为json文件。在xdk应用程序中 我将对该json文件发出xhr请求,该文件将读取所有依赖项并加载所有必需的模块,因为我的应用程序的代码和 xdk应用程序不会被更改。
缺点: - 它将增加xhr请求以获取app.js,这最终将增加加载时间
有没有更好的方法来实现这个目标?