我很困惑.如果我每次只能使用ng-app一次,那么如何使用不同模块中的指令,不同的.js文件.看:
<script src='mainModule.js'/> <script src='secondModule.js'/> <body ng-app='mainModule'> <my-thingy/> <div> <other-thingy/> </div> </body> mainModule.js: angular.module("mainModule",[]).directive("myThingy",function(){ ... }) secondModule.js: angular.module("secondModule",[]).directive("otherThingy",function(){ ... })
那么,我现在如何指向页面上的第二个模块,而不是从mainModule.js引用它
有一个解决方案可以通过编程方式在页面上引导几个角度模块(
docs).
原文链接:https://www.f2er.com/angularjs/142849.html定义几个模块:
var app1 = angular.module('myApp1',[]); var app2 = angular.module('myApp2',[]); app1.controller('MainCtrl',function($scope) { $scope.name = 'App1'; }); app2.controller('MainCtrl',function ($scope) { $scope.name = 'App2'; })
然后在index.html中做:
<html> <head></head> <body> <!-- Module 1 --> <div id="myApp1"> <div ng-controller="MainCtrl"> <h1>Hello {{name}}</h1> </div> </div> <!-- Module 2 --> <div id="myApp2"> <div ng-controller="MainCtrl"> <h1>Hello {{name}}</h1> </div> </div> <!-- Bootstrap modules --> <script> angular.element(document).ready(function() { angular.bootstrap(document.getElementById('myApp1'),['myApp1']); angular.bootstrap(document.getElementById('myApp2'),['myApp2']); }); </script> </body> </html>