Как установить предварительно выбранные данные в опции динамического выбора в IONIC

Я столкнулся со странной проблемой, когда мне нужно показать предварительно выбранные данные (которые также поступают с сервера) в опции выбора. Проблема в том, что мне нужно показать параметр выбора на основе параметра ключа и значения.

       <div class="list list-inset">
            <span class="input-label">Permisstion</span>
            <select ng-model="permisstion" >
             <option ng-repeat="(key, value) in Roles" id="{{key}}" value="{{value}}">{{value}}</option>
            </select>
        </div>

JSON-данные

"Roles": {
        "21": "Admin",
        "22": "Main Manager",
        "23": "Branch Manager",
        "26": "Side Manager"
    }

Я не знаю, как показать предварительно выбранные данные в опции выбора, и я много пытаюсь, но до сих пор не добился успеха. Пожалуйста помоги.


person Neotrixs    schedule 19.12.2016    source источник


Ответы (1)


Во-первых, ваш JSON не является массивом объектов. Я не знаю, работает ли <select> по атрибутам объектов... по моему другому ответу вы можете сделать что-то вроде ниже.

Попробуйте использовать так:

"Roles" : {
           [
              {code: 21, name: "Admin"},
              {code: 22, name: "Main Manager"}, 
              {code: 23, name: "Branch Manager"},
              {code: 24, name: "Side Manager"}
           ]
          }

Таким образом, атрибут «код» будет моим индексом для выбора:

<select ng-options="role.name for role in Roles track by role.code">
        <option value="">They see me rollin</option>
</select>

Я использую отслеживание по коду роли, как вы можете посмотреть в этом видео.

ПОМНИТЕ: если код повторится в массиве объектов, он сломает <select>.

person Bruno Gomes    schedule 21.12.2016