AngularJS-在html中从ng include传递控制器时出错
我正在创建一个门户风格的应用程序,它将把域内其他URL的html注入页面的各个部分。让我们称之为小部件。我希望每个小部件都加载一个ng include 小部件应该在返回的html中包含自己的控制器。我需要这些是自包含的,因为每个用户的小部件列表都会发生变化。除了一个全局控制器,我似乎无法让小部件html加载任何东西。我使用的是Grails服务器端,所以忽略${}标记 在我的应用程序中,GreetingController起作用。如果使用GridCtrlr,则会出现以下错误: 我在页面上加载了另一个控制器,工作正常,因此我知道angular运行正常 在这种情况下,我必须使用全局控制器,还是可以在应用程序范围内使用全局控制器 以下是主页上的ng包括:AngularJS-在html中从ng include传递控制器时出错,angularjs,Angularjs,我正在创建一个门户风格的应用程序,它将把域内其他URL的html注入页面的各个部分。让我们称之为小部件。我希望每个小部件都加载一个ng include 小部件应该在返回的html中包含自己的控制器。我需要这些是自包含的,因为每个用户的小部件列表都会发生变化。除了一个全局控制器,我似乎无法让小部件html加载任何东西。我使用的是Grails服务器端,所以忽略${}标记 在我的应用程序中,GreetingController起作用。如果使用GridCtrlr,则会出现以下错误: 我在页面上加载了另
<div ng-include="'${createLink(controller:"testGrid", action:"index")}'"></div>
以下是ng include返回的html,显示了创建控制器的两种样式:
<script type="text/javascript">
portalLayoutTool.controller('GridCtrlr', function($scope) {
$scope.greeting = 'Hola!';
});
function GreetingController($scope) {
$scope.greeting = 'Hola!';
}
</script>
<div ng-controller="GreetingController">
<div>
</div>
</div>
谢谢你能给我的帮助。这一定是一个非常简单的问题,但AngularJS需要一些时间来适应
实际上,这两种控制器风格在plunker中都不起作用:代码似乎有点奇怪,我不确定我是否理解您试图实现的所有功能,但是 如果你把JS从html文件中拉出来,只保留一个模板,并允许JS在页面加载开始时被实例化,那么你就会有一些东西在工作,不管它是否是你想要的,我不能说,但至少是向前迈出了一步 这是你的叉子:
您的小部件方法似乎被误导了。看看指令,我希望小部件是一段自包含的代码,包括UI和Javascript,而不需要在最初加载页面时声明它的控制器。根据用户的角色,页面可能会为每个用户加载不同的小部件。
<script type="text/javascript">
portalLayoutTool.controller('GridCtrlr', function($scope) {
$scope.greeting = 'Hola!';
});
function GreetingController($scope) {
$scope.greeting = 'Hola!';
}
</script>
<div ng-controller="GreetingController">
<div>
</div>
</div>