Javascript 当ng app未设置为模块名称时,angular如何选择根/主模块?
这个。但没有描述angular在没有模块名称时的行为?那么angular如何选择根模块呢Javascript 当ng app未设置为模块名称时,angular如何选择根/主模块?,javascript,angularjs,Javascript,Angularjs,这个。但没有描述angular在没有模块名称时的行为?那么angular如何选择根模块呢 它是否创建一个通用模块并注入其中所有可用模块?它将是ng,不,它不会注入其他模块。看一看。因此,当angular被加载并且文档准备就绪时,angularInit将被调用以查找带有ng app和模块的元素,然后调用bootstrap。如果没有定义模块,您可以参考下面的逻辑,ng作为默认模块被取消移动到模块阵列 function bootstrap(element, modules) { var doBoo
它是否创建一个通用模块并注入其中所有可用模块?它将是
ng
,不,它不会注入其他模块。看一看。因此,当angular被加载并且文档准备就绪时,angularInit
将被调用以查找带有ng app
和模块的元素,然后调用bootstrap
。如果没有定义模块,您可以参考下面的逻辑,ng
作为默认模块被取消移动到模块阵列
function bootstrap(element, modules) {
var doBootstrap = function() {
element = jqLite(element);
if (element.injector()) {
var tag = (element[0] === document) ? 'document' : startingTag(element);
throw ngMinErr('btstrpd', "App Already Bootstrapped with this Element '{0}'", tag);
}
modules = modules || [];
modules.unshift(['$provide', function($provide) {
$provide.value('$rootElement', element);
}]);
modules.unshift('ng');
var injector = createInjector(modules);
injector.invoke(['$rootScope', '$rootElement', '$compile', '$injector', '$animate',
function(scope, element, compile, injector, animate) {
scope.$apply(function() {
element.data('$injector', injector);
compile(element)(scope);
});
}]
);
return injector;
};
谢谢,所以它只使用ng,所以JavaScript中定义的所有其他模块都被忽略了,对吗?是的。您可以通过
angular.module('ng')
@redben-mate签出ng
,如果这有点帮助,请您投票/接受它,thanks@elaujuh保持冷静,不要着急:)