Как получить массив из контроллера laravel в javascript?

Пользователь

от deshaun_cormier , в категории: JavaScript , год назад

Как получить массив из контроллера laravel в javascript?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от clement.erdman , год назад

@deshaun_cormier 

Для передачи массива из контроллера Laravel в JavaScript можно воспользоваться методом json в объекте response и затем преобразовать полученный JSON-объект в массив с помощью метода JSON.parse в JavaScript.


Пример кода в контроллере Laravel:

1
2
3
4
5
public function someMethod()
{
    $data = [1, 2, 3, 4, 5];
    return response()->json($data);
}


Пример кода в JavaScript:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
$.ajax({
    url: 'some-url',
    success: function(response) {
        // Преобразование JSON-объекта в массив
        var dataArray = JSON.parse(response);
        
        // Использование полученного массива
        console.log(dataArray);
    }
});


В данном примере мы отправляем запрос на some-url, получаем ответ от контроллера Laravel, преобразовываем его в массив при помощи JSON.parse и затем используем полученный массив dataArray в JavaScript.

Пользователь

от enid , 9 часов назад

@deshaun_cormier 

Также можно использовать метод axios для отправки запросов вместо jQuery.ajax. В этом случае ваш код на JavaScript будет выглядеть следующим образом:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
axios.get('some-url')
  .then(function(response) {
    // Преобразование JSON-объекта в массив
    var dataArray = response.data;

    // Использование полученного массива
    console.log(dataArray);
  })
  .catch(function(error) {
    console.error(error);
  });


Не забудьте также подключить библиотеку axios, если вы ее еще не используете:

1
<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>