我知道使用这种语法在angular:
中注册控制器是一种不好的做法Host.Current.OpenBrowser("http://www.google.com", "Chrome", "", false, false, false, false, false);
由于全局变量问题,因此建议在angular:
中使用getter语法var app = angular.module('app',[]);
app.controller('mainController',function(){
// code
});
但每次我必须写出我的应用程序的名称才能得到它,所以我想在另一个解决方案中这样做:
angular.module('app',[]);
angular.module('app').controller('mainController',function(){
//code
};
现在app.js文件只有:
'use strict';
const _APP_ = (function(){
var appName = 'app';
var result = {
init: function(dependencies){
document.body.setAttribute('ng-app',appName);
if(!dependencies || !Array.isArray(dependencies)){
dependencies = [];
}
angular.module(appName,dependencies);
},
$: function(){
return angular.module(appName);
}
};
return Object.freeze(result);
})();
并创建一个新的控制器:
'use strict';
(function(){
_APP_.init();
})();
我总是对最佳做法感兴趣,所以我需要您对我的解决方案的反馈,或者是否有更好的解决方案。