SL-A-SH Ответов: 0

Как передать два значения в одном объекте $scope


В моем методе GET, когда я регистрирую $scope.room_image_id, я получаю два значения, предположим, 47 и 95.

$http({
    method:'GET',
    url: '=' +$scope.current_Hotel.hotel_id
}).then(function(response){
    var roomdata = response.data;
    $scope.roomdata = roomdata;
    var roomtype = roomdata.data;
    angular.forEach(roomtype, function(value, key){
        $scope.room_image_id = value.image;
        console.info($scope.room_image_id);      <!--- HERE -->

    });


и я передаю это значение в другом методе GET, и я должен получить два изображения. По одному от каждого удостоверения личности, которое я сдал.

$http({
      method: 'GET',
      url: '&image_id=' + $scope.room_image_id
     }).then(function (response) {
                   
     var imgdata = response.data;
     var imgdata1 = imgdata.data.image_name;
     $scope.room_image = "/" + imgdata1;
     console.log(imgdata1);
}


Вот JSON-данные, когда идентификатор 95

{
status: 200,
message: "Packages Found",
data: {
0: "495",
1: "0",
2: "uploads/950286957inbound-marketing-ss-1920-800x450.jpg",
image_id: "495",
hotel_id: "0",
image_name: "uploads/950286957inbound-marketing-ss-1920-800x450.jpg"
}
}


а вот данные JSON, когда ID равен 45

{
status: 200,
message: "Packages Found",
data: {
0: "45",
1: "0",
2: "uploads/17081121512t13ry63443fg43416t46136.jpg",
image_id: "45",
hotel_id: "0",
image_name: "uploads/17081121512t13ry63443fg43416t46136.jpg"
}
}


Но он возвращает только первые данные JSON, т. е. когда ID равен 95, но я получаю оба идентификатора, когда регистрирую $scope.room_image_id

Вот разметка:

<div class="row" ng-repeat="x in roomdata.data">

    <div class="well well-sm">{{x.room_type}}<a href="#" data-toggle="modal" data-target="#room_detail{{$index}}" class="pull-right">Room Details</a>
    </div>
    <h5 class="pull-right">{{x.rack_price}}<br>Per room per night</h5>
    <img ng-src="{{room_image}}">
</div>


Добавлен JSON для roomdata
{
status: 200,
message: "Packages Found",
data: [
{
room_type_id: "9",
hotel_id: "40",
room_type: "Delux",
total_rooms: "10",
max_people: "2",
max_child: "1",
rack_price: "2500",
description: "<p>Sea Facing</p> ",
image: "47",
extra_person: "1",
extra_child: "1",
tax_type: "2",
tax_name: "Service Tax",
tax_amount: "9",
},
{
room_type_id: "214",
hotel_id: "40",
room_type: "Super Delux",
total_rooms: "30",
max_people: "2",
max_child: "1",
rack_price: "3000",
description: "<p>Super Delux </p> ",
image: "495",
extra_person: "1",
extra_child: "1",
tax_type: "2",
tax_name: "Service Tax",
tax_amount: "10",
}
]


Я получаю 47 и 495 от изображения в roomdata. Кроме того, когда я регистрирую $scope.room_image_id, я получаю 47 и 495.Проверьте цикл forEach в первом методе GET.

Что я уже пробовал:

<div class="row" ng-repeat="x in roomdata.data">

    			<div class="well well-sm">{{x.room_type}}{{x.image}}<a href="#" data-toggle="modal" data-target="#room_detail{{$index}}" class="pull-right">Room Details</a>
    			</div>
    			<h5 class="pull-right">{{x.rack_price}}<br>Per room per night</h5>
    			<img  ng-src="{{room_image}}" ng-init=fetchImage(x.image)>


Я попытался передать идентификатор изображения в функцию, а затем получить данные. Теперь я получаю оба изображения

Вот эта функция

$scope.fetchImage = function(value){
            $http({
            method: 'GET',
            url: '&image_id=' + value
        }).then(function (response) {
                var imgdata = response.data;
                var imgdata1 = imgdata.data.image_name;
                $scope.room_image = "" + imgdata1;
                
                console.info($scope.room_image);
            });
        };


Консоль теперь дает мне два url-адреса, из которых извлекаются изображения
Пример:
https://uploads/165753081311.08.10-ces_ft_photography_20755221_582_379.jpg
https://uploads/950286957inbound-marketing-ss-1920-800x450.jpg


Теперь, как я могу использовать выражение привязки для их отображения.

Karthik_Mahalingam

что вы получаете в ответ

SL-A-SH

Объект из одного URL-адреса. Я должен получить два объекта, так как мой $scope.room_image_id дает мне два значения

Karthik_Mahalingam

что возвращает метод из c#

SL-A-SH

Данные JSON

Karthik_Mahalingam

опубликуйте вывод json

SL-A-SH

Я отредактировал этот вопрос

Karthik_Mahalingam

в том что и все детали вам нужны

SL-A-SH

Я хочу, чтобы имя image_name хранилось в $scope.room_image так, чтобы при использовании ng-repeat в моем представлении. Он показывает два изображения вместо одного. В настоящее время я использую это, но я получаю одно и то же изображение в обеих строках

Karthik_Mahalingam

у него только одна строка как же так получилось что он повторится дважды

SL-A-SH

Проверьте правку. В настоящее время я получаю две строки, но в обеих строках я получаю одно и то же изображение вместо разных изображений

Karthik_Mahalingam

опубликуйте json для roomdata. data

SL-A-SH

Я хочу сказать, что передаю два значения в $scope.room_image_id в моем втором методе GET, тогда почему я получаю ответ только от второго значения.

Karthik_Mahalingam

$область действия.room_image_id
это запятая отделена?

SL-A-SH

Нет. Я добавил JSON для roomdata

Karthik_Mahalingam

Опубликуйте весь код и связанные с ним данные json

SL-A-SH

http://codepen.io/SL-A-SH/pen/yMEXWg?editors=1010

Karthik_Mahalingam

какую ценность вы получаете
$область действия.selectHotel = функция (отели) {
$http({
метод: "получить",
URL-адрес: 'https://&однако=' + $охвата.current_Hotel.exterior_image
}). затем(функция (ответ) {


ответ

SL-A-SH

Те же данные JSON, из которых я получаю изображения, но на этот раз из другого идентификатора изображения.

Подобный этому
{
статус: 200,
сообщение: "пакеты найдены",
данные: {
0: "45",
1: "0",
2: "uploads/17081121512t13ry63443fg43416t46136.jpg",
однако: "45",
hotel_id: "0",
image_name: "uploads/17081121512t13ry63443fg43416t46136.jpg"
}
}

Karthik_Mahalingam

это имеет только один элемент, он должен быть массивом

SL-A-SH

Нет, когда я загружаю страницу, она дает один объект, потому что по умолчанию выбран один отель. И когда выбирается другой отель, он дает другой объект, поэтому данные соответственно изменяются в представлении

SL-A-SH

Теперь я могу назвать оба изображения. :D не могли бы вы, пожалуйста, проверить раздел "Что я пробовал". Я обновил его

Karthik_Mahalingam

если у вас есть оба изображения, то привязка к элементу управления изображением

SL-A-SH

Я сделал свою работу. Спасибо

Karthik_Mahalingam

Хорошо

0 Ответов