Javascript 包括角度配置模块
我无法构建一个存储所有配置数据的角度模块,然后将其包含在我的主角度模块中 其目的是使系统能够更改配置数据。因此,主模块代码和控制器代码相同,但配置模块不同 我尝试了很多不同的方法来让它工作,但它们都给了我一系列的错误 我的配置模块如下所示Javascript 包括角度配置模块,javascript,angularjs,Javascript,Angularjs,我无法构建一个存储所有配置数据的角度模块,然后将其包含在我的主角度模块中 其目的是使系统能够更改配置数据。因此,主模块代码和控制器代码相同,但配置模块不同 我尝试了很多不同的方法来让它工作,但它们都给了我一系列的错误 我的配置模块如下所示 (function( ){ angular.module('favoriteeats.config') .constant('GLOBAL_CONFIG', { 'base_uri': '".url( )."' });
(function( ){
angular.module('favoriteeats.config')
.constant('GLOBAL_CONFIG', {
'base_uri': '".url( )."'
});
});
我的主要(浓缩)模块如下所示。请注意,我将其与用于支架的刀片模板一起使用
(function( ){
var app = angular.module('favoriteeats', ['favoriteeats.config','ngResource'], function($interpolateProvider) {
$interpolateProvider.startSymbol('<%');
$interpolateProvider.endSymbol('%>');
})();
当我在头部包含配置模块脚本时,我得到了这个错误
“错误:[$injector:modulerr]未能实例化模块favoriteeats,原因是:
[$injector:modulerr]未能实例化模块favoriteeats.config,原因是:
[$injector:nomod]模块'FavoriteAtes.config'不可用!您可能拼写错误了模块名称或忘记加载它。如果注册模块,请确保将依赖项指定为第二个参数。“
在懒散地加载JS之后,当我在页脚中包含配置模块脚本时,我得到了相同的错误
如果我将配置模块脚本添加到一个单独的JS文件中,并将其添加到主模块JS文件之前或之后,我会得到相同的错误
唯一可行的方法是,我将它包含在与主模块相同的`(function(){'容器中
(function( ){
angular.module('favoriteeats.config')
.constant('GLOBAL_CONFIG', {
'base_uri': '".url( )."'
});
var app = angular.module('favoriteeats', ['favoriteeats.config','ngResource'], function($interpolateProvider) {
$interpolateProvider.startSymbol('<%');
$interpolateProvider.endSymbol('%>');
})();
(函数(){
angular.module('favoriteets.config')
.constant('GLOBAL_CONFIG'{
'base_uri':'”.url()。“'
});
var app=angular.module('favoriteeats',['favoriteeats.config','ngResource'],函数($interpolateProvider){
$interpolateProvider.startSymbol(“”);
})();
这是为什么?我如何从另一个位置提取它并包含我的配置脚本!?!?我找不到答案来确定哪里出了问题。你的生活有问题
(function( ){
angular.module('favoriteeats.config')
.constant('GLOBAL_CONFIG', {
'base_uri': '".url( )."'
});
}); // This does not close the IIFE.
将其更改为:
(function( ){
angular.module('favoriteeats.config')
.constant('GLOBAL_CONFIG', {
'base_uri': '".url( )."'
});
}()); // or })();
编辑;我甚至没有注意到你不是在定义你的模块,而是在引用它。就像@joao和@mithon建议的那样-添加一些括号:
angular.module('favoriteeats.config', [])
angular.module('favoriteeats.config', [])
您应该通过指示模块的依赖项(在本例中为空数组)来声明模块,然后必须执行函数:
(function( ){
angular.module('favoriteeats.config', [])
.constant('GLOBAL_CONFIG', {
'base_uri': '".url( )."'
});
})();
您正在引用“favoriteeats.config”模块,而不是定义它。如果添加依赖项的空列表,它应该可以工作
angular.module('favoriteeats.config', [])