我已经实现了两个Angular NVD3应用程序,用于在我的html页面上查看2个图表。我读过我可以通过使用ng-modules而不是ng-app来实现它们,但不知何故它不起作用。你能帮帮我吗?
<div ng-modules="temperatureChart" ng-controller="temperatureCtrl">
<nvd3 options="options" data="data" class="with-3d-shadow with-transitions"></nvd3>
<br><a href="http://krispo.github.io/angular-nvd3/" target="_blank" style="float: right;">See more</a>
</div>
<div ng-modules="heatcounterChart" ng-controller="heatingCtrl">
<nvd3 options="options" data="data" class="with-3d-shadow with-transitions"></nvd3>
<br><a href="http://krispo.github.io/angular-nvd3/" target="_blank" style="float: right;">See more</a>
</div>
这就是我尝试过的方式,但它没有用。
答案 0 :(得分:1)
要在您的网页上使用2个角度应用,您需要不使用ng-app
来引导您的应用。相反,您应该通过位于2个应用程序的主包装器上的脚本来推迟自举。加载完应用程序,脚本等后,您可以使用angular.bootstrap('document', <ng dependencies array>)
。
您可能无法为两个应用程序提供正确的依赖关系序列,因为您可能具有竞争条件,循环依赖关系等。有关手动引导的更多信息 - https://docs.angularjs.org/api/ng/function/angular.bootstrap
答案 1 :(得分:0)
首先,您的网页上一次只能有一个ng-app。 其次,没有&#34; ng-modules&#34;指令(据我所知)。您正在寻找的指令是&#34; ng-app&#34;
如果您有多个模块,请在代码中添加一个新模块,这取决于所有这些模块。然后,这个新模块将进入您的ng-app。
JS:
angular.module("myApp",["temperatureChart","heatcounterChart"]);
HTML:
<body ng-app="myApp">...