how to prevent error: [ng:btstrpd] App Already Bootstrapped with this Element 'document'

how to prevent error: [ng:btstrpd] App Already Bootstrapped with this Element 'document'

使用 angular-meteor v 0.9

正在尝试正确加载预先打包的 AngularMeteor-SmartAdmin 示例应用程序

获取错误:

Error: [ng:btstrpd] App Already Bootstrapped with this Element 'document'

有没有办法找出发生此错误的原因和位置?

这是我的流星列表:

angular:angular-animate                               1.4.0  AngularJS (official) release. For full...
angular:angular-cookies                               1.4.0  AngularJS (official) release. For full...
angular:angular-resource                              1.4.0  AngularJS (official) release. For full...
angular:angular-route                                 1.4.0  AngularJS (official) release. For full...
angular:angular-sanitize                              1.4.0  AngularJS (official) release. For full...
angularui:angular-ui-router                           0.2.15  angular-ui-router (official): Flexibl...
angularui:ui-utils                                    0.2.4  Angular-ui-utils package for meteor.
autopublish                                           1.0.3  Publish the entire database to all cli...
cfs:http-methods                                      0.0.29  Adds HTTP.methods RESTful
gsklee:ngstorage                                      0.3.0  ngStorage package for Meteor
http                                                  1.1.0  Make HTTP calls to remote servers
insecure                                              1.0.3  Allow all database writes by default
less                                                  1.0.14  The dynamic stylesheet language
meteor-platform                                       1.2.2  Include a standard set of Meteor packa...
planettraining:angular-translate                      2.7.0  Angular Translate
planettraining:angular-translate-loader-static-files  2.7.0  Angular Translate
planettraining:angular-translate-loader-url           2.7.0  Angular Translate
planettraining:angular-translate-storage-cookie       2.7.0  Angular Translate
planettraining:angular-translate-storage-local        2.7.0  Angular Translate
selchenkov:angular-bootstrap-ui                       0.0.1  Meteor 
urigo:angular             0.9.0  

问题出在 index.html 的 ng-include

index.ng.html 的文件路径

应该是

<div ng-include="'client/index.ng.html'">
</div>

路径始终是绝对路径,如 Angular Meteor 教程中所述

It's very important to note - the paths are always absolute, not relative! so if 'index.ng.html' was inside a client folder, you would have to place the whole path from the route app, doesn't matter where you're calling the file from. like this (e.g. if index.ng.html was in the 'client' folder):

<div ng-include="'client/index.ng.html'"></div>

这只是因为您不恰当地称呼您的 body 或 div。尝试 <div ng-app="app1" ng-controller="controller1">/*code or UI here*/</div>。让第二个 reneder <div id="app" ng-app="app2" ng-controller="controller2">/*code or UI here*/</div> 在里面。所以现在你可以打电话 angular.element(document).ready(function () { var appID = document.getElementById('app'); angular.bootstrap(appID, ['app2']); });

在您的 angular 控制器中避免两个 Angular 控制器之间的冲突。所以两个控制器都是原子的,因此它在一页中使用。