Мне нужно будет отображать разные цены для одного и того же элемента в зависимости от выбранной вами валюты (разные цены уже предоставлены из бэкэнд, поэтому нет необходимости в дальнейшем преобразовании). Я хотел бы изменить выражение с помощью ng-click
Мой html выглядит следующим образом:
<div ng-controller="myCtrl">
you have, {{exchange.[currency]}}...
<br>
<br>
<select>
<option ngclick="currency='USD'">USD</option>
<option ngclick="currency='Eur'">Eur</option>
</select>
</div>
И мой контроллер:
var app = angular.module('myApp', []);
// controller here
app.controller('myCtrl', function($scope) {
$scope.currency = "USD";
$scope.exchange = [{
"USD": 199,
"Eur": 20
}];
})
Вы можете проверить код выше в JSfiddle здесь
Вот как вы могли бы сделать это по Угловому пути.
HTML:
<div ng-controller="myCtrl">
you have, {{currency.rate}} {{currency.code}}
<br>
<br>
<select ng-options="currency.code for currency in exchange" ng-model="currency"></select>
</div>
контроллер
var app = angular.module('myApp', []);
// controller here
app.controller('myCtrl', function($scope) {
$scope.exchange = [{
"code": "USD",
"rate": 199
},
{
"code": "EUR",
"rate": 20
}];
$scope.currency = $scope.exchange[0];
})