ng-app并不总是启动
ng-app not always starting
我的新项目开始遇到问题,我在金字塔服务的 jinja2 模板中使用角度应用程序。
一个模板具有带有 ng-app 的 DIV,它仅在有时开始工作。我尝试使用带有一个控制器的简单模块,该控制器仅将"我在这里!"记录到控制台中,但它仅在有时起作用(我 100% 确定模板已正确呈现)。
我对此问题的解决方法是同时使用 ng-app 标签和使用 angular.bootstrap,这有时会产生错误,但会使应用程序正常工作。无论出于何种原因,仅使用 angular.bootstrap 并不总是有效。
我在这里错过了什么吗?
var ticketApp = angular.module('ticketApp', ['ngRoute', 'ui.bootstrap']);
ticketApp.factory('ticketAppData', function() {
var all_ticket_data = {};
return {all_ticket_data: all_ticket_data};
});
ticketApp.controller('TicketAppController', function($scope, ticketAppData) {
});
ticketApp.controller('TicketAppListController', function($scope, ticketAppData) {
$scope.data = ticketAppData;
});
ticketApp.controller('TicketAppDetailsController', function($scope, ticketAppData) {
$scope.data = ticketAppData;
});
ticketApp.config(['$routeProvider',
function($routeProvider) {
$routeProvider.
when('/list', {
templateUrl: '/static/ticket-ng-app/views/list.html',
controller: 'TicketAppListController'
}).
when('/details/:ticket_id', {
templateUrl: '/static/ticket-ng-app/views/details.html',
controller: 'TicketAppDetailsController'
}).
otherwise({
redirectTo: '/list'
});
}
]);
angular.bootstrap($('#ticketApp-window'), ['ticketApp']);
<div id="ticketApp-window" ng-app="ticketApp" ng-controller="TicketAppController">
<div ng-view class="ticket-app-view"></div>
</div>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.10/angular.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.10/angular-route.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/0.12.0/ui-bootstrap.js"></script>
<script src="../../static/ticket-ng-app/app.js"></script>
尝试删除 ng-app,将控制器放在 ng-view 上,然后像这样调用 angular.bootstrap:
var ticketAppWin = document.getElementById('ticketApp-window');
angular.bootstrap(angular.element(ticketAppWin), ['ticketApp']);
让 angular.element 包起来 DOMElement 比自己动手要好。
看看这个小提琴:http://jsfiddle.net/u78meq8g/
相关文章:
- 是否可以在第n个元素处重复启动ng
- 使用名称初始化 ng-app 会禁用变量初始化
- AngularJS:ng-show不适用于ng-app
- AngularJS在不同的网页上有不同的ng-app
- 为什么ng-app不是ng-module
- ng-app并不总是启动
- 可以在正文标签的末尾引导角度,使网页比在正文标签上使用ng-app慢
- 基本的HTML ng-app不起作用
- 在 html 标签上声明 ng-app 和 ng-controller 是不好的
- Angular JS覆盖ng-app之外的A链接
- Angular JS自定义指令在没有ng-app指令的情况下不起作用
- ng-app or angular.bootstrap
- 由于ng-app指令在html标记上,因此量角器抛出错误
- 如何在页面加载后添加ng-app
- AngularJS控制器在ng-app不相邻时不显示数据
- 一个单一的网页有一个ng-app或多个网页共享相同的ng-app
- AngularJS种子中的多个ng-App代码段是什么意思?
- 部分更新后,如何在ng-app作用域外编译html
- 使用空字符串("")作为ng-app的名称
- 在ng-app声明中定义AngularJS代码