Как получить доступ к динамической области видимости, возвращаемой в 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
,