多个Angular JS应用程序

时间:2016-11-02 13:42:50

标签: angularjs angular-nvd3

我已经实现了两个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>

这就是我尝试过的方式,但它没有用。

2 个答案:

答案 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">...