KatzOderKoder
Cadet 2nd Year
- Registriert
- Okt. 2019
- Beiträge
- 25
Hallo Zusammen,
ich kämpfe mit den ersten Vue.Js Experimental Projekt und möchte Daten aus einer MySQL DB in einer Tabelle anzeigen.
Ich verwende PHPStorm und habe damit die Projektvorlage für VUE Projekte verwendet. Das HelloWorld Beispiel hat auf Anhieb funktioniert. Ich habe es erweitert und Die Daten aus der Tabelle abrufen und anzeigen zu können.
muss ich für console.log noch etwas einbinden?
console.log gibt es nicht. Es gibt jedoch this.console.log. Beim ausführen kommt dann die Meldung "Uncaught (in promise) TypeError: Cannot read property 'console' of undefined"
Wenn ich den catch Block auskommentiere bekomme ich den eigentlichen Fehler:
"Uncaught (in promise) TypeError: response.data is not a function"
Hat jemand eine Idee?
ich kämpfe mit den ersten Vue.Js Experimental Projekt und möchte Daten aus einer MySQL DB in einer Tabelle anzeigen.
Ich verwende PHPStorm und habe damit die Projektvorlage für VUE Projekte verwendet. Das HelloWorld Beispiel hat auf Anhieb funktioniert. Ich habe es erweitert und Die Daten aus der Tabelle abrufen und anzeigen zu können.
muss ich für console.log noch etwas einbinden?
console.log gibt es nicht. Es gibt jedoch this.console.log. Beim ausführen kommt dann die Meldung "Uncaught (in promise) TypeError: Cannot read property 'console' of undefined"
Wenn ich den catch Block auskommentiere bekomme ich den eigentlichen Fehler:
"Uncaught (in promise) TypeError: response.data is not a function"
Javascript:
.catch(function (error) {
this.console.log(error.response); <<<< ohne this.console gibt es bereits bei Starten ein Fehler.
HelloWorld.vue
<template>
<div class="hello">
<h1>{{ msg }}</h1>
<!-- Select All records -->
<input type="button" value="Select All users" @click="allRecords()">
<br><br>
<!-- Select record by ID -->
<input type="text" placeholder="Enter adress ID" v-model="adressid">
<input type="button" value="Select adress by ID" @click="recordByID()">
<!-- List records -->
<table border="1" width="80%" style="=border-collapse: collapse;">
<tr>
<th>AdressID</th>
<th>AdressNr</th>
<th>Name</th>
</tr>
<tr v-for="adresse in adressenliste" v-bind:key="adresse.ADRESSID">
<td>{{ adresse.ADRESSID }}</td>
<td>{{ adresse.ADRESSNR }}</td>
<td>{{ adresse.NAME }}</td>
</tr>
</table>
</div>
</template>
<script>
export default {
name: 'HelloWorld',
props: {
msg: String
},
data() {
return {
adressenliste: [],
adressid: 0
}
},
methods:{
allRecords: function () {
this.axios.get("ajaxfile.php")
.then(function (response) {
this.adressenliste = response.data(); <<<< response.data hat die Daten abgerufen, das JSON sehe ich im debugger.
})
.catch(function (error) {
this.console.log(error.response); <<<< ohne this.console gibt es bereits bei Starten ein Fehler.
});
},
recordByID: function () {
if(this.passid > 0){
this.axios.get("ajaxfile.php",{
params:{
adressid: this.adressid
}
})
.then(function (response) {
this.adressenliste = response.data;
})
.catch(function (error) {
this.console.log(error.response);
});
}
}
}
}
</script>
Hat jemand eine Idee?
Zuletzt bearbeitet: