Как делать Ajax запросы в vue.js?

Пытаюсь разобраться как привязать Ajax к vue. Поиск не помогает, документация у фреймворка очень хорошая, но почему-то тоже обходит стороной вопрос, как собственно доставлять данные в vue-приложение.
Пишу так:
new Vue({
        delimiters: ['{*', '*}'],
        el: '#app',
        data: {
            message: 'Hello Vue.js!',
            values: []
      },
        created: function() {
            this.$http.get('/inspector/vue').then(
            function (response) { // Success.
                console.log(response.data);
                this.values = response.data;
                },
            function (response) { // Error.
                    console.log('An error occurred.');
                }
            );
        }
    })

Получаю ошибку: "TypeError: this.$http is undefined".
Как принято делать такие запросы в vue? Может обычный ajax добавить в created?

Я собираюсь подгружать данные при загрузке страницы, и затем с определенным интервалом делать запрос для обновления данных.
Я правильно понимаю, что нужно создать метод загружающий данные и вызывать его в created, и затем с определенным интервалом вызывать этот же метод?
  • Вопрос задан
  • 40440 просмотров
Решения вопроса 1
sfi0zy
@sfi0zy Куратор тега JavaScript
Creative frontend developer
Как принято делать такие запросы в vue?

Сейчас модно использовать fetch - codepen (только нужно подставлять полифилл для лучшей поддержки браузерами).

Я правильно понимаю, что нужно создать метод загружающий данные и вызывать его в created, и затем с определенным интервалом вызывать этот же метод?

Это было бы логично, да.
Ответ написан
Пригласить эксперта
Ответы на вопрос 4
@tosha_lol_daaa
Попробуйте использовать axios :)
axios.get('/url').then((response) => this.data = response.data.response)
.catch((error) => console.log(error.response.data));

P.s: import axios from 'axios'; для использования
Ответ написан
Комментировать
@mina_rina
Вот тут подробно описано.
Ответ написан
Комментировать
adrin13
@adrin13
front-end
установить и использовать vue-resource
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы