Как получить доступ к динамической области видимости, возвращаемой в angularjs

У меня есть требование - одиночная угловая функция js, чтобы динамически возвращать переменную области действия на основе одного из входных параметров функции. Для функции контроллера я нашел пример того, как вернуть динамическую область видимости, например:

$scope[attributeId] = data.response; (attributeId является входным параметром, data.response является массивом)

Вопрос в том, как использовать такую ​​переменную области видимости в HTML? У меня есть такой элемент управления select, который заполняет раскрывающийся список значениями, перенастроенными в области действия, которые в этом случае должны быть указаны как модель и опция.

<button ng-click="getAttributeValue(getProductsModel,p.attributeId, $event)">Get Attribute Value</button>
<select data-ng-model="attributeModel" 
    data-ng-options="a for a in attributeResponse">
    <option value="">-- Select Value --</option>
</select>

Пример действительно помог бы.

1 ответ

Вы должны назначить его $scope.attributeId, После этого вы можете заполнить его, используя ng-options директивы.

Теперь я не знаю, какова ваша структура данных, поэтому вот пример с автомобилями.

Мнимый array:

$scope.cars = [
    {
        id: 1,
        name: 'Ford'
    },
    {
        id: 3,
        name: 'Mercedes'
    },
    {
        id: 3,
        name: 'BMW'
    },
]

И <select> стихия с населенными машинами:

<select ng-model="selectedOption" ng-options="car.name for car in cars">

Теперь вы можете получить доступ к выбранной опции, используя $scope.selectedOption,

Другие вопросы по тегам