Javascript 如何使用附加到html标记的嵌套ng应用程序将一个基于angularjs的SPA包含到另一个基于angularjs的SPA中?
角度模块定义为:Javascript 如何使用附加到html标记的嵌套ng应用程序将一个基于angularjs的SPA包含到另一个基于angularjs的SPA中?,javascript,angularjs,ng-app,Javascript,Angularjs,Ng App,角度模块定义为: angular.module('module1',['ngRoute']); 模块1的路由定义为 module1.config(function($routeProvider) { $routeProvider .when('/Application1', { templateUrl: 'Application1/Application1_HomePage.html', })
angular.module('module1',['ngRoute']);
模块1的路由定义为
module1.config(function($routeProvider)
{
$routeProvider
.when('/Application1',
{
templateUrl: 'Application1/Application1_HomePage.html',
})
.otherwise({
templateUrl: 'MainPage.html',
controller: 'ctrl'
)}
});
控制器ctrl的定义如下:
module1.controller('ctrl',function($scope,$location)
{
$scope.goToApp1 = function()
{
$location.path('/Application1',true);
}
});
shell页面如下所示:
<html ng-app="module1">
<body>
<div ng-view> </div>
</body>
</html>
Application1_HomePage.html包含除shell页面ng应用程序模块1之外的另一个ng应用程序
从上面显示的shell页面,当通过routeProvider调用Application1_HomePage.html时,Application1_HomePage.html内部编写的ng应用程序初始化失败。浏览器检查器清楚地显示DOM之外的内容
考虑到上述场景,我如何从一个ng应用程序导航到另一个ng应用程序?假设两个模块都有入口页面,您可以只放置一个指向其他应用程序页面的链接,例如: 加载module1Index.html,并在该页面上放置指向module2Index.html的链接:
<a href="http://module2.com"></a>
我是新来的。如果OP可以(重新)将
ng app
从html
移动到各自的div
,这难道不是一个选项吗?@EdSF-你必须通过定义ng app或通过JS初始化来告诉angular什么是app模块。明白了吗,因此,
和另一个
各自有各自的职责范围(而不是在一个应用程序中确定整个范围,因为ng-app
是在顶级
中定义的)?@EdSF-不,你不能为同一角度应用程序使用两个ng-app,如果你有两个不同的索引页,那么你可以这样做,否则,将一个模块作为另一个模块的依赖项包含。@fatman-我已经尝试将一个模块注入另一个模块,但没有成功,浏览器检查器也没有显示与注入模块相关的任何内容。
angular.module('module1', ['module2']);