AngularJS:重构控制器的状态

时间:2013-10-16 10:53:22

标签: angularjs refactoring

我在Angular的Controller中嵌入了一个未命名的State,我想重用代码和模板,这样我也可以将它用于不同URL中的状态。有没有办法做到这一点?我可以从其他文件中引用Controller吗?

我想做的例子:states.js.coffee.erb

#other state up here
        ])
  ).state('do-something',
    url: '/do-something/:id'
    views:
      'users':
        templateUrl: '<%= template_path('user-do_something') %>'
        controller: 'Controllers.SomethingController'
  ).state('other-state',
    url: '/other-state'

controllers.js.coffee.erb

angular.module("Controllers", [])
.controller('SomethingController', ['$scope', ($scope) ->
  $scope.variable_a = ""

1 个答案:

答案 0 :(得分:1)

你必须做

controller: 'SomethingController'

您只需要将Controllers模块作为您配置状态的模块的依赖项。

angular.module('app', ['Controllers']).config(function($stateProvider) { .... });

这应该可以解决问题。