Я пытаюсь подключить локальный express API к моему Vue приложению. Когда от I go до "http://localhost: 3000 / all " в браузере он показывает значения массива "myArr", как и ожидалось. Но я не могу заставить Ax ios вернуть значения массива в моем скрипте Vue. Я получаю сообщение об ошибке типа: «TypeError: Невозможно прочитать свойство 'get' of undefined".
Я искал какое-то время без удачи. Я нашел несколько потоков, которые предоставляют решения, связанные с сердечниками, но я не смог заставить их работать.
Как мне получить значения "myArr", которые будут отображаться в моем приложении vue?
Вот мой Express скрипт:
const express = require('express');
const myArr = ["one", "two", "three"];
console.log("server is starting");
const app = express();
const server = app.listen(3000);
app.get("/all", function sendAll(req, res) {
res.send(myArr);
});
Вот мой Vue скрипт:
<template>
<div class="container">
<p>test</p>
<p class="error" v-if="error">{{ error }}</p>
<div class="item-container">
<div
class="items"
v-for="(myItem, index) in myItems"
v-bind:item="myItem"
v-bind:key="index"
>
<p>{{ myItem }}</p>
</div>
</div>
</div>
</template>
<script>
import { axios } from "axios";
export default {
name: "vue-app",
data() {
return {
myItems: [],
error: ""
};
},
async created() {
const res = await axios.get("http://localhost:3000/all");
this.myItems = res.data;
}
};
</script>
//style
Пожалуйста, дайте мне знать, если смогу предоставить больше информации, я ценю любую / все помощь:)