Как использовать Angularjs UI маршрутизатор вложенных представлений с несколькими контроллерами и требует JS

0

Я работаю над угловым проектом с угловым ui-маршрутом и использованием вложенных представлений, таких как:

 $stateProvider.state('app', {
     url: '/form',
     views: {
         'p1@modals': {
             templateUrl: 'form1.html'
         }
         'p2@modals': {
             templateUrl: 'form2.html',
             controller: function($scope) {
                 //do some thing
             }
         }
     }
 })

однако у нас есть несколько подходов/формы, каждый из которых имеет контроллер, мы не хотим помещать весь код контроллера в файл js, поэтому мы записываем конфигурацию как:

 $stateProvider.state('app', {
     url: '/form',
     views: {
         'p1@modals': {
             templateUrl: 'form1.html'
         }
         'p2@modals': {
             templateUrl: 'form2.html',
             controller: 'P2Controller.js'
         }
     }
 })

в P2Controller.js мы определяем контроллер как:

 define(['app'], function(app) {
    app.controller('P2Controller', function($scope) {

    });
 })

проблема в том, как загрузить P2Controller.js и вызвать контроллер

  • 0
    Прежде чем вы получите свой ответ, обратите внимание на то и это
Теги:
angular-ui-router
nested
requirejs
angularjs-controller

1 ответ

0

Почему бы не использовать стандартную технику:

конфиг файл:

angular.module('yourModule', [])
.config(function($stateProvider) {
    $stateProvider.state('app', {
        url: '/form',
        views: {
            'p1@modals': {
                templateUrl: 'form1.html'
            },
            'p2@modals': {
                templateUrl: 'form2.html',
                controller: 'P2Controller'
            }
        }
    })
})

P2Controller.js:

angular.module('yourModule')
.controller('P2Controller', function() {
    //your stuff
});

PS 'p1 @modals' означает, что модалы являются родительскими для представления 'p1'. Будьте осторожны с этой логикой

Ещё вопросы

Сообщество Overcoder
Наверх
Меню