我正在构建一个离子v1应用程序,我想将我的url保存为全局常量或字符串,并根据需要在应用程序的任何位置使用它。如何做到这一点?
答案 0 :(得分:1)
appname.constant('CONSTANTS', {
TEMPLATE_PATH: {
LOGIN: {
LOGIN_PAGE: 'app/Auth/template/log-in.html',
//balance
}
}
}
这是我们定义常量的一种格式,您可以随时使用它
templateUrl: CONSTANTS.TEMPLATE_PATH.LOGIN.LOGIN_PAGE
保持每个模块分开,如Login,Home ..等,以便更好地使用
答案 1 :(得分:0)
你可以创建一个文件" constants.js"并创建一个自调用函数,将您声明的每个常量实例化为角度常量。
(function() {
'use strict';
function constants() {
return {
'SERVER': {
url: 'http://' + ip_back_end + ':' + porta_back_end + '/' + name_app_back_end
}
};
}
// I'm using lodash here, but you can do it the same way as angular foreach
_.forEach(constants(), function(value, key) {
angular.module('app').constant(key, value);
});
})();
然后在任何其他角度组件中,您可以注入它
angular.module('todo', ['ionic'])
.controller('TodoCtrl', function($scope, SERVER) {
$scope.tasks = [
{ title: 'Collect coins' },
{ title: 'Eat mushrooms' },
{ title: 'Get high enough to grab the flag' },
{ title: 'Find the Princess' }
];
})
答案 2 :(得分:0)
我使用了这段代码并且有效:
app.constant('configSettings', {
'baseUrl': 'http://www.google.com',
'someElseSetting': 'my new Value'
});
app.controller('myCtrl', function($scope, configSettings){
console.log(configSettings.baseUrl);
$scope.baseUrl = configSettings.baseUrl;
});