Доступ к изображениям из локального файла JSON на веб-странице в angularjs - PullRequest
0 голосов
/ 07 июня 2018

Где я ошибаюсь?

Я хочу получить доступ к изображениям из файла datahl.json на веб-странице, но не могу получить к ним доступ. Пожалуйста, проверьте коды и помогите мне.Если возможно, пожалуйста, отошлите решение к редактору плункеров.

index.html

        <div class="col-sm-4" ng-repeat = "hbl in hbls">
            <div class="thumbnail" ng-repeat = "h in hbl.data_list" 
                 style="width:100%;">
              <img ng-src="{{h.img}}" alt="" style="height:50vh;">
                 <div class="caption">   
                    <p><strong>{{h.name}}</strong></p>
                </div>
            </div>
        </div> 

app.js Это мои js коды

 var app = angular.module('hostellApp', []);
app.controller('hostellController', function($scope, hblsFactory){
    $scope.hbls;

    hblsFactory.getHbls().then(function(response){
       $scope.hbls = response.data; 
    });

    $scope.sayHello = function(){
        console.log("Hello");
    }
});

    app.factory('hblsFactory', function($http){

        function getHbls(){
            return $http.get('datahl.json');
        }

        return {
            getHbls: getHbls
        }
    });    

datahl.json Это мой локальный файл JSON

`{

    "view_type": 5,
    "title": "Hostels By Locality",
    "position": 5,
    "data_list":
   [

        {
            "img": "https://s3.us-east-2.amazonaws.com/images-city- 
                    teens/IMG_20180526_1139570.8091572935412125.jpg",
            "name": "Mahavir Nagar"
        },
        {
            "img": "https://graph.facebook.com/1666751513414902/picture? 
                          type=large",
            "name": null
        },
        {
            "img": "https://s3.us-east-2.amazonaws.com/images-city- 
                            teens/cropped1148015742983667713.jpg",
            "name": "New Rajiv Gandhi"
        },
        {
            "img": "https://s3.us-east-2.amazonaws.com/images-city- 
                         teens/cropped998427941.jpg",
            "name": "Jawahar Nagar"
        }

    ]
}`

1 Ответ

0 голосов
/ 09 июня 2018

Данные, которые вы получаете из файла JSON, являются не массивом, а объектом.Это означает, что вам нужен только один ng-repeat.

. Измените свой первый ng-repeat на ng-repeat="h in hbls.data_list" (добавили 's' к hbl) и удалите второй ng-repeat.

.Рабочий плункер: https://plnkr.co/edit/OOd1M1dNFjSB7uaqZZB6?p=preview

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...