Ui-router, como definir URL do controller? [RESOLVIDO]


(Luan Maik) #1

Tenho o seguinte código:

//Define a rota para a dashboard(página principal)
$stateProvider.state('dashboard', {
      url: '/dashboard',
      templateUrl: 'views/dashboard/view.html',
      controller: 'dashboardController'
});

Gostaria de saber se existe a possibilidade de eu informar o caminho do controller assim como o template, por exemplo:

controllerUrl: 'views/dashboard/dashboardController.js'

estou com esta dúvida, pois se não houver como, se eu tiver 200 controllers terei de fazer um arquivo js super hyper mega tripa com o código dos 200 controllers.

Valeu.


(Marioaleogolsat) #2

Você não precisa fazer um mega arquivo de 200 controllers, na verdade seus arquivos de controller devem possuir apenas um controller cada.
Você não precisa informar ao ui.router qual é o destino do seu controller pois ele faz o carregamento dele pelo nome que foi definido no module ( angular.module("app").controller('meuController', ... ), então você só deve garantir que nenhum dos seus controllers definidos tenham o mesmo nome.


(Guilherme Chafy) #3

Fala ai Luan, talvez esse modulo resolva seu problema.
https://oclazyload.readme.io


(Luan Maik) #4

@marioaleogolsat, quando postei a dúvida eu estava iniciando no angular, tempo depois eu entendi como fazer para abstrair os controladores do arquivo do módulo principal, mas mesmo assim eu tinha que chamar todos de uma só vez quando carregasse a aplicação, o q torna a aplicação pesada.


(Luan Maik) #5

@guichafy, vlw era isso mesmo que eu precisava