2017-11-24 3 views
0

Ich habe Probleme beim Zugriff auf eine API zum Abrufen oder Abrufen von Daten. Ich bin immer noch neu bei vue.js und javascript. Ich erhalte einen Fehler Uncaught SyntaxError: Invalid shorthand property initializer. Ich kann nicht verstehen, was der Fehler bedeutet oder anzeigt.Versuch, auf eine API mit Vue zuzugreifen js

<body> 
    <div id="vue-app"> 
      {{ articles }} 
    </div> 
<body> 

var article = new Vue({ 
    el: '#vue-app', 

    data: { 
     articles = '' 
    }, 

    created: function() { 
     this.fetchData(); 
    },   

    methods: { 
     fetchData: function() { 
      var that = this 
      this.$http.get('localhost/aim-beta/rest/export/json/article'), 
       function (data) { 
        vm.articles = data.main.temp; 
       } 
     } 
    } 

}); 

Antwort

0

Ich glaube, Sie nicht in der JS-Objekt Syntax

data: { 
    articles = '' 
} 
+0

Richtig, das habe ich nicht bemerkt. Jetzt erhalte ich einen Fehler 'Kann Eigenschaft nicht lesen 'get' von undefined ' – Noel

0

Versuchen

data: function() { 
    return() { 
     articles: ‘’ 
    } 
} 

und geben Sie http gleich verwenden können: // auf den lokalen Host

this.$http.get('http://localhost/aim-beta/rest/export/json/article'), 
      function (data) { 
       this.articles = data.json() 
      } 
+0

Hallo, ich erhalte einen Fehler' "TypeError: Kann die Eigenschaft' get 'von undefined nicht lesen'' – Noel

1

Anstatt this.$http zu verwenden, verwenden Sie die Bibliothek axios, um API-Anrufe zu tätigen.

+0

Ich habe gerade Axios auf dev installiert Mein Ordner. Wo lege ich normalerweise diese drei Zeilen 'import Vue 'von' vue ';', 'importiere Axios von' axios ';', 'importiere VueAxios von' vue-axios ';'? Fügen Sie sie in meine app.js ein? – Noel

+0

können Sie dafür einen Plünderer oder Fiedler erstellen. es wäre leicht, dort zu reparieren. –

0

das Verwenden der data JSON-Objekt:

data: { 
    articles: '' 
} 

Verwenden Sie dann Versprechen zum Zünden der HTTP-Anforderung (beachten Sie, dass ich die http:// mit der URL verwendet):

this.$http.get('http://localhost/aim-beta/rest/export/json/article') 
      .then(function(response){ 
       this.articles = response.json(); 
      }); 

Quelle : Documentation

+0

Hallo, ich erhalte einen Fehler 'TypeError: Kann die Eigenschaft 'get' von undefined nicht lesen – Noel

+0

versuche' Vue.http.get' anstelle von 'this. $ Http.get' zu verwenden. Dann lassen Sie mich wissen. – beingadityak

+0

Hallo, gleicher Fehler auf der Konsole 'Typeerror: kann Eigenschaft‚get‘von undefined' – Noel

Verwandte Themen