首页 > 解决方案 > 如何在 Vue.js 和 Laravel 8 中使用基于 Axios Promise 的 Http Request 获取特定的列名值

问题描述

如果我在我的 Vue.js 脚本组件中执行此操作

    getResumeAPIData(id){
  // declare a response interceptor
  axios.interceptors.response.use((response) => {
    // do something with the response data
    console.log('Response was received');

    return response;
  }, error => {
    // handle the response error
    return Promise.reject(error);
  });


  // sent a GET request
  axios.get(`api/resume-data-returns/${id}`)
       .then((response)=>{
         this.RelationTable = response.data
         console.log(this.RelationTable);
       })
},

我得到这样的回应

{"id":1,"name":"userlocalvm","email":"userlocalvm@v","email_verified_at":null,"type":"user","bio":"Why","photo":"1606931001.jpeg","created_at":"2020-12-02T16:01:00.000000Z","updated_at":"2020-12-02T17:43:21.000000Z"}

因为我的 Laravel api.php->Controller 后端代码

      $findOrFailId = Resumes::findOrFail($forEachId);
      $foreignKeyOfResTable = $findOrFailId->user_id;
      return User::findOrFail($foreignKeyOfResTable);

但是如果我这样做

      // sent a GET request
  axios.get(`api/resume-data-returns/${id}`)
       .then((response)=>{

         this.RelationTable = response.data.created_at

         console.log(this.RelationTable);
       })

添加的点然后是列的属性名称

response.data.created_at

我得到回应

undefined

对不起,如果这是一个愚蠢的问题,因为我在一般的编程和随之而来的行话方面仍然是一个新手,我非常想学习和掌握 javascript 和 php!

标签: laravelvue.jsaxios

解决方案


可能是响应在另一个data对象内。您可能必须执行以下操作:

response.data.data.created_at

推荐阅读