2016-11-22 2 views
-4

У меня есть имя контроллера ParentController, у которого есть выпадающее меню ddlState. Как получить доступ к этому выпадающему меню в другом контроллере с именем CityController в Angular JSКак получить доступ к выпадающему списку в другой области контроллера в angularjs

+1

Можете ли вы показать нам какой-нибудь код? Поэтому мы можем начать обсуждать на основе того, что вы пробовали. – Andrea

+0

У нас есть много кода, связанных с этим, поэтому, пожалуйста, найдите, затем разместите свой вопрос. Я думаю, что его дубликат http://stackoverflow.com/questions/20181323/passing-data-between-controllers-in-angular-js –

ответ

0

используйте завод.

Вот пример для обмена простых данных

app.factory('dataExchange', function() { 
    var ret = { 
     getData: getData, 
     setData: setData 
    }; 

    var data = {}; 

    return ret; 

    function getData() { 
     return data; 
    } 

    function setData(x) { 
     data = x; 
    } 
}); 

Просто дайте свой объект setData в вашем родительском контроллере, и получить его обратно в вашем ребенок с getData

0

У вас есть различные способы работы с это, 1. Всегда лучше иметь выпадающее меню по директиве. Затем вы можете использовать одну и ту же директиву для множественного выпадающего списка в нескольких контроллерах с помощью функции $ on. 2. Иначе, если вы хотите написать и повторить выпадающий код во всех html и контроллерах, вы можете пойти с локальной системой хранения, поэтому раз вызывайте результат API и храните его в локальном хранилище (уровень браузера), в других контроллерах также с вызывая API, вы можете добавить данные в папку с локального хранилища.

Другой способ - сохранить значения вниз в переменной $ rootScope, и вы можете использовать их там, где хотите. (но этот способ не рекомендуется)

Смежные вопросы