Как Mostar данные, полученные из object в angularjs?
я только что сделал запрос к моей базе данных, который я возвращаю object
сохраните их в localstorage
localStorage.setItem("Tickets", JSON.stringify(response));
и в другой функции я называю их так:
var headshot = localStorage.getItem("Tickets");
случается, что у меня есть переменная repo:
var repos = [
{
'rut' : '...here..',
'numero' : '...here...',
}
и я хочу заполнить его полученными данными, а затем отобразить их в поисковой системе с помощью ng-repeat ...
как я могу это сделать?
я запутываюсь, здесь у меня уже есть html-код я использую Angular-материал:
реализуйте второй пример:
Https://material.angularjs.org/latest/demo/autocomplete
Спасибо тем, кто помогает мне!.
5 answers
Как указано выше, я также советую вам не использовать JSON.stringify
Вам не нужно создавать переменную repos. Чтобы искать в вашем списке ng-repeat, вы можете занять" filter " AngularJS (Angular 1), это очень просто. Я оставляю вам код
$scope.tickets = localStorage.getItem('Tickets');
В html
<input type="text" placeholder="ingrese rut" ng-model="buscar">
<div ng-repeat="ticket in tickets | filter : buscar">
{{ticket.rut}}
</div>
Нужно ли вам сохранять в LS, а затем получать из LS каждый раз, когда вы делаете вызов бэкэнда?. Было бы целесообразно использовать функцию успеха в цепочке обещаний службы / factory сначала заполните переменную данными,а затем сохраните в LocalStorage (я рекомендую ngStorage). Затем вы назначаете эту переменную соответствующему $scope для отображения данных в ngRepeat. Глаз! Что" искатель " (фильтр) ngRepeat очень неэффективен, попробуйте другие альтернативы как ngTable. С уважением.
Как говорит Пабло Алехандро, вы должны сделать JSON.parse
или в AngularJS (Angular 1) angular.fromJson()
, назначить его своей переменной, и там, если вы передадите его своей переменной, но обратите внимание, если вы используете md-autocomplete
(я предполагаю, что вы используете), вы должны поместить md-no-cache="true"
, чтобы вы могли загружать изменения в случае динамического списка.
md-autocomplete
он использует md-virtual-repeat
, который значительно улучшает печать многих строк. (Использование angular-material
в нескольких проектах)
JSON.stringify(response)
преобразует полученный объект json в string, чтобы прочитать его с помощью ng-repeat, вы должны передать его обратно в объект json, вы можете преобразовать его с помощью json_response_object = JSON.parse(string_response);
, а затем характерный ng-repeat
<div ng-repeat="obj in json_response_object">
<span>{{obj.numero}}</span>
....
</div>
Вы можете напрямую использовать данные ответа:
<div ng-controller="Controller">
<ul>
<li ng-repeat="cosa in datos">
Rut: {{cosa.rut}} numero{{cosa.numero}}
</li>
</ul>
</div>