Javascript Can';t使angular应用程序在meteor模板中运行
无法使angular应用程序在meteor模板中运行 这是我的index.htmlJavascript Can';t使angular应用程序在meteor模板中运行,javascript,angularjs,meteor,iron-router,angular-meteor,Javascript,Angularjs,Meteor,Iron Router,Angular Meteor,无法使angular应用程序在meteor模板中运行 这是我的index.html <body> </body> <template name="myIndex"> <section ng-app="myApp" ng-controller="AppController as app"> <div ng-include="'client/index.ng.html'"></div> <
<body>
</body>
<template name="myIndex">
<section ng-app="myApp" ng-controller="AppController as app">
<div ng-include="'client/index.ng.html'"></div>
</section>
</template>
执行路由器规则并在呈现的HTML中显示模板后,不会启动角度指令,也不会启动ng app
,也不会启动ng include
如何解决这个问题?在meteor模板渲染后,尝试手动启动angular
Angular应用程序在有ng应用程序指令时自动启动,但在这种情况下,该指令是其他模板系统的模板。可能需要在将模板添加到DOM后手动初始化Angular应用程序 查看meteor Preload的文档,可以使用以下代码片段实现:
MyIndexRouteController = PreloadController.extend({
'onAfterAsync' : function() {
//angular.element(document).ready(function() {
angular.module('myApp', []);
angular.bootstrap(document, ['myApp']);
//});
},
'preload': {
'async': ['/js/xxx.js']
},
});
你在哪里初始化你的应用程序
myApp
?在client/ngApp/app.js
中,你能创建一个基本的JSFIDLE吗?抱歉,我忘了提到,但我在询问之前尝试了这种方法。铁路由器出了点问题我想你是试过了还是理论上的?我试着把没有成功(也许我犯了一些错误,这就是为什么我想知道你是否尝试过)@peka,我没有尝试过,如果没有更多的代码和meteor的环境设置,很难复制这个
MyIndexRouteController = PreloadController.extend({
'onAfterAsync' : function() {
//angular.element(document).ready(function() {
angular.module('myApp', []);
angular.bootstrap(document, ['myApp']);
//});
},
'preload': {
'async': ['/js/xxx.js']
},
});