2017-09-21 88 views
0

Vue.js是新的,我想將數據屬性值傳遞給我的模板。在vue中傳遞數據屬性js laravel組件

我:

export default { 
    name: "profile", 
    data:() => ({ 
    user:[] 
    }), 
    mounted() { 
    axios 
     .get('/api/user') 
     .then(function (response) { 
     this.user = response 
     }) 
     .catch(function (response) { 
     console.error(response); 
     }); 
    } 
} 

在HTML模板我:

<template> 
    <div>{{user.name }}</div> 
</template> 

現在我得到的

錯誤不能設置的undefined

財產 user

一個console.log(response)生產:

名: 「用戶1」,//名稱存在
電子郵件...

回答

1

嘗試使用arrow function爲愛可信回調

.then((response) => { 
    this.user = response 
}) 

arrow function結合你期望的組件上下文。

+0

謝謝,這個工作,我也不得不做出一些改變香港專業教育學院意識到,響應我需要使用this.user = response.data –

0

在安裝:

mounted() { 
    var self = this; 
    axios.get('/api/user') 
     .then(function (response) { 
      self.user = response 
     }) 
     .catch(function (response) { 
      console.error(response); 
     }); 
    } 
}