如何在AngularJS中在运行时创建模块?

时间:2014-02-10 14:31:02

标签: javascript angularjs firefox angularjs-module

我希望能够在运行时创建AngularJS模块,所以我这样做:

<section class="panel portlet-item" id="crashpanel"></section>
<script type="text/javascript">
var angularApp = angular.module("Crashpanel", []);
angularApp.controller("CrashpanelCtrl", function ($scope, $http, $compile)
{
    console.log("Hello");
});
angular.bootstrap(angular.element("#crashpanel"), [ "Crashpanel" ]);
</script>

但是不显示“Hello”,因为控制器未附加到元素。如何将控制器连接到元素?

2 个答案:

答案 0 :(得分:1)

如果需要,您需要在代码中的某处放置 data-ng-app =“Crashpanel”,以便对模块进行引用,例如:

<html data-ng-app="Crashpanel">

您的部分必须具有 ng-controller 属性(与其他用户说的一样)才能引用您的控制器。

<section class="panel portlet-item" id="crashpanel" data-ng-controller="CrashpanelCtrl"></section>

答案 1 :(得分:0)

将您的元素更改为:

<section class="panel portlet-item" id="crashpanel" data-ng-controller="CrashpanelCtrl"></section>