如何在AngularJS stateprovider中为单个模板使用两个控制器进行路由?

时间:2016-07-25 06:05:52

标签: angularjs routing angular-ui-router

这里我使用的是状态提供程序,用于路由。我想为单个模板使用两个控制器,如何编写语法?

这就是我的尝试。

$stateProvider.state("home", {
  url: "/",
  templateUrl: 'home.html',
  controller: 'HomeController'
  controller: 'Searchresults'
});

 $stateProvider.state("home", {
  url: "/",
  controller: ['HomeController','Searchresults']
});

1 个答案:

答案 0 :(得分:0)

嗯,如果您想为同一个模板使用两个控制器,这听起来不太好。为什么不能只使用相同的控制器或服务来保持逻辑通用?

除了推荐,你可以试试这个。将第一个控制器添加到状态配置:

$stateProvider.state("home", {
  url: "/",
  templateUrl: 'home.html',
  controller: 'HomeController'    // 1st controller here
});

并在ng-controller的父元素中将第二个控制器添加为home.html

<div ng-controller="Searchresults">
   <!-- your code of home.html -->
</div>