【发布时间】:2021-06-22 09:39:51
【问题描述】:
为什么不能通过 axios 获取值?
我得到了正确的任务 ID,可以在 Blade 中显示但无法进入 Vue。
哪里出错了?
id = 4 - 是任务的 id 当我尝试 http://cosys.loc/api/task/4 - 没问题时,我得到 ID 为 4 的任务的 json。
这是链接,例如:<router-link :to="{ name: 'TaskShow', params: { id: 4 }}">Show details</router-link>
TaskDetails.vue:
<template>
<div class="container-fluid my-3">
<h1>ID from URL: #{{ this.$route.params.id }}</h1>
<h2>taskId: {{ taskId }}</h2>
<p class="lead">{{ this.$route.tasks }}</p>
<ul>
<li>{{ tasks.id }}</li>
<li>{{ tasks.title }}</li>
<li>{{ tasks }}</li>
</ul>
</div>
</template>
<script>
import axios from 'axios';
export default {
name: "TaskDetails",
data() {
return {
tasks: {},
taskId: this.$route.params.id,
loading: true,
errored: false,
}
},
mounted() {
axios
.get(`/api/task/${this.$route.params.id}`)
.then(response => (this.tasks = response.data.tasks), (console.log(`${this.$route.params.id}`)))
.catch(error => console.log(error))
.finally(() => (this.loading = false));
},
}
</script>
<style scoped>
</style>
当我打开 url http://cosys.loc/tasks/show/4 时,获取 ID 为 1 的任务的值。 为什么,如何解决?
Tnx, 安东
【问题讨论】:
标签: laravel vue.js axios vue-router