Привязка к внешней модели в представлении

0

Поэтому я создаю приложение с использованием среды Mean.js, я уже создал два модуля, клиентский модуль и модуль встреч. Назначение будет иметь идентификатор клиента.

Mean.js создает клиентские и серверные файлы в рамках модулей, Angular используется на стороне клиента.

Я не настолько опытен с Angular, но поэтому у меня есть какая-то борьба, пытаясь выяснить, каким будет подход к тому, чтобы сделать следующее.

В "create-assignments-view.html" (модуль назначения) я хочу привязать окно поиска к контроллеру клиентов, чтобы я мог искать имя клиента и выбирать его.

Модуль клиентов работает так, как ожидалось, я могу создавать, переписывать, редактировать и обновлять новых клиентов, но, конечно, ему не нужна дополнительная информация из другого модуля. В отличие от модуля встреч, в котором я хочу посмотреть список клиентов и выбрать один из них.

Каждый модуль имеет свой собственный контроллер, который управляет операциями CRUD, маршрутами и представлениями.

Я хотел бы получить некоторую помощь, документацию, ссылки и т.д., Которые помогут мне получить ответ и понять, как это можно сделать.

Благодарю!

  • 0
    Вы хотите разделить объект между контроллерами?
  • 0
    точно или по крайней мере это моя идея
Теги:
meanjs

1 ответ

1

Вероятно, нужно использовать угловую услугу, а точнее фабрику. Они однократно называются одноточечными, которые не меняются, как это делают контроллеры.

Вот пример lite plunker: http://plnkr.co/edit/DoxvzZZf4OIxaOJ24EED

angular
        .module('app',['ngRoute'])
        .config(config)
        .factory('Service',Service)
        .controller('FirstCtrl',FirstCtrl)
        .controller('SecondCtrl',SecondCtrl);


    function config($routeProvider) {
        $routeProvider
          .when('/', {
            templateUrl: 'one.html',
            controller: 'FirstCtrl as first_ctrl'
          })
          .when('/two', {
            templateUrl: 'two.html',
            controller: 'SecondCtrl as second_ctrl'
          })
          .otherwise({
            redirectTo: '/'
          });
    }


    function Service() {
        var service = {
            name: 'Clark'
        }

        return service;
    }

    function FirstCtrl(Service) {
        var vm = this;

        vm.name = Service.name;
        vm.setName = setName;

        function setName() {
            console.log('new name set');
            Service.name = vm.name;
        }
    }

    function SecondCtrl(Service) {
        var vm = this;
        vm.name = Service.name;
    }
  • 0
    Спасибо! После того, как вы ответили, я прочитал документацию об услугах, и, похоже, это то, что я ищу Собираюсь с этим поработать и посмотреть что получится

Ещё вопросы

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