У меня есть массив, как показано ниже;
$scope.cart = [];
Это содержит элементы, такие как id, имя и т.д.
Как включить элементы в href
как href
ниже;
<a href="http://www.example.co.uk/search-menu/{{$scope.cart.restaurant_id}}/test">
Это не работает.
Я также попытался использовать ng-repeat=item in cart
FYI Когда я console.log($scope.cart)
я получаю следующее:
[Object]
0: Object
cookie_id: "j0m3hdkf4c371nueajdi9gf4f3"
date: "0000-00-00"
day: ""
id: "92"
location: ""
restaurant_id: "1"
time: "00:00:00"
user_id: "63"
Его Магия в двух направлениях Передача данных
Использовать директиву ng-href
в angularjs
Удалите $scope
в теге привязки. Вы напрямую получаете доступ к переменной области видимости. В части контроллера только мы используем объект $scope
не нужен для представления html.
<a ng-href="http://example.co.uk/search-menu{{cart[0].restaurant_id}}/test">
ng-repeat
должен работать на самом деле. Но вы должны попробовать его с помощью ng-href
, как ng-href
ниже...
В вашем HTML:
ng-repeat="item in cart" ng-href="yourUrl/{{item.id}}"
В вашем контроллере:
$scope.cart = [ cart1, cart2, ...];
Если у вас появятся какие-либо ошибки, я действительно помогу их увидеть здесь!
Первое, что я сделал бы, это удалить область $scope
в вашем контроллере и заменить ее на this
this.cart = [];
Затем в вашем View
вы можете использовать объявление Controller As, после чего вы получите точечную нотацию (что лучше для этого)
например
<div data-ng-controller="CartController as cart">
<a ng-href="http://www.example.co.uk/search-menu/{{cart[0].restaurant_id}}/test">
</div>