简体   繁体   English

使用ui-router-有没有办法提供控制器文件的路径?

[英]Using ui-router - is there a way to provide a path to controller file ?

I am making a very basic angular app using ui-router, and I have 3 "modules" right now, which are home , login , and register . 我正在使用ui-router制作一个非常基本的angular应用程序,并且现在有3个“模块”,分别是homeloginregister Here is how I have defined them: 这是我如何定义它们:

'use strict';

var app = angular.module('exampleApp', [
  'ui.router',
  'ngAnimate',
  'ui.bootstrap'
]);

app.config(function($stateProvider, $urlRouterProvider) {
  $urlRouterProvider.otherwise('/');

  $stateProvider
    .state('home', {
      url: '/',
      templateUrl: './main/home/home.html',
      controller: './main/home/home-controller.js'
    })
    .state('login', {
      url: '/login',
      templateUrl: './main/login/login.html',
      controller: './main/login/login-controller.js'
    })
    .state('register', {
      url: '/register',
      templateUrl: './main/register/register.html',
      controller: './main/register/register-controller.js'
    })
})

However, I think I am doing the controller: portion wrong. 但是,我认为我正在执行controller:部分错误。 I want to define each controller for each "module", and I'm not sure how to go about doing that. 我想为每个“模块”定义每个控制器,但我不确定该怎么做。

Here's my file structure - 这是我的文件结构-

在此处输入图片说明

First define your controller. 首先定义您的控制器。

angular.module('exampleApp').controller('loginCtrl', function () { 
 // ctrl task goes here.
});

Mapping controller to a route. 将控制器映射到路由。

$stateProvider.state('login', {
              url: '/login',
              templateUrl: 'path/to/login.html',
              controller: 'loginCtrl'
            })

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM