2017-02-22 41 views
1

Я следующий кодUncaught TypeError: Не удается прочитать свойство «получить» неопределенных в VueJs

<div id="vue-instance"> 

</div> 

JS

var vm = new Vue({ 
    el: '#vue-instance', 
    data: { 
    }, 
    ready:function(){ 
    this.loadCountries(); 
    }, 
    methods:{ 
     loadCountries(){ 
      this.$http.get('https://restcountries.eu/rest/v1/all',function(data){ 
       console.log(data); 
      }) 
     } 
    } 
}); 

Когда я запускаю код выше это дает мне следующую ошибку

Uncaught TypeError: Cannot read property 'get' of undefined

У меня есть скрипка

JsFiddle

Помощь была бы оценена

+0

У вас есть vue-ресурс, установленный и настроенный? –

+0

http://stackoverflow.com/questions/33247812/this-http-vuejs-not-set – Ranj

+0

@AmreshVenugopal, как установить это на jsFiddle? – Vikram

ответ

3

$http.get от Vue Resource. Убедитесь, что вы тянете, что должным образом пути добавления vue-resource к вашим package.json, установите его с помощью npm install и в коде:

var Vue = require('vue'); 

Vue.use(require('vue-resource')); 

Чтобы использовать эту функцию в скрипке, вы должны добавить vue-resourcecdn link во внешних ресурсах и использовании следующим в коде :

Vue.use(VueResource) 

Смотрите рабочие демо:. https://jsfiddle.net/49gptnad/187/

+0

как это сделать в скрипке? Все, что я хочу сделать, это вызов Ajax, есть ли другой способ? – Vikram

+0

@Vikram Здесь вы идете: https://jsfiddle.net/49gptnad/186/ – Saurabh

+0

Я все еще ничего не вижу в консоли, хотя вижу, что ошибка ушла, и я проверяю вручную, что url отлично работает – Vikram

0

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

npm install vue-resource --save 

После его установленного идти своим main.js файл и импортировать VUE ресурс следующим

import vueResource from 'vue-resource' 

Теперь его импортируемого таким образом, мы просто должны вызвать использовать метод Vue для работы с этим промежуточным программным обеспечением. Вы можете вызвать метод следующим образом.

Vue.use(vueResource) 
0

Я установил этот вопрос в следующем режиме:

npm install bootstrap-vue --save 
npm install vue-resource --save 

в main.js

import Vue from './bootstrap' 
import BootstrapVue from 'bootstrap-vue' 

Vue.use(BootstrapVue) 

создать bootstrap.js

import Vue from 'vue' 
import VueResource from 'vue-resource' 

Vue.use(VueResource) 

export { Vue } 

В App.vue

this.$http.get('/api/module/all').then(... 

 Смежные вопросы

  • Нет связанных вопросов^_^