VueJS router.push() 问题
2018-03-26
3146
我直接说重点。我在登录页面上进行身份验证,单击登录页面后,它会将我重定向到产品组件,然后在该产品组件上,我发出
HTTP 请求
以获取所有产品。但是,登录并重定向到产品页面后,产品组件似乎无法在
created()
生命周期挂钩上运行我的
HTTP 请求
。这是正常行为吗?
这是我的代码:
登录:
export default{
data(){
return {
email: '',
password: ''
}
},
methods:{
login(){
var data = {
client_id: 2,
client_secret: 'TOKEN_HERE,
grant_type: 'password',
username: this.email,
password: this.password
}
this.$http.post("oauth/token", data).then(response => {
this.$auth.setToken(response.body.access_token, response.body.expires_in + Date.now())
this.$router.push('/products')
})
}
}
PRODUCTS.VUE
import Products from './product/Products.vue'
export default {
components: {
'my-products' : Products
},
created(){
this.$http.get('api/products')
.then(response => {
alert("products from feed");
this.products = response.body
})
}
}
重定向到
products.vue
创建的生命周期挂钩后,它无法运行我的 http 请求。
提前致谢。
1个回答
我似乎需要
mounted
钩子。
https://v2.vuejs.org/v2/guide/instance.html#Instance-Lifecycle-Hooks
Max Liashuk
2018-03-26