解决vue.js this.$router.push无效的问题
更新时间:2018年09月03日 15:31:29 作者:gang456789
今天小编就为大家分享一篇解决vue.js this.$router.push无效的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
如下所示:
login() {
if(this.email.length > 0 && this.password.length >0) {
this.$http.post('/api/login', {
user: this.email,
password: this.password
})
.then(res => {
let userPwd = res.data
if(this.password == userPwd) {
this.$router.push("/")
} else {
alert("错误,请重新输入!")
}
})
.catch(err => {
console.log(err)
})
} else {
alert("输入错误!")
}
}
this.$router.push(“/”)不是跳转到主页,而是变成这样:http://127.0.0.1:8080/login?email=yejia%40qq.com&password=123456,请问哪里错啦?
解决方案1:
有没有可能是已经跳转了,但是主页判断成了没有登录,然后又跳回来了。
解决方案2:
你这里的 this指向已经不是 vue 的对象啦,可以这么改
login() {
const self = this;
if(this.email.length > 0 && this.password.length >0) {
this.$http.post('/api/login', {
user: this.email,
password: this.password
})
.then(res => {
let userPwd = res.data
if(this.password == userPwd) {
self.$router.push("/")
} else {
alert("错误,请重新输入!")
}
})
.catch(err => {
console.log(err)
})
} else {
alert("输入错误!")
}
}
以上这篇解决vue.js this.$router.push无效的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Vue指令v-for遍历输出JavaScript数组及json对象的常见方式小结
这篇文章主要介绍了Vue指令v-for遍历输出JavaScript数组及json对象的常见方式,结合实例形式总结分析了vue.js使用v-for指令遍历输出js数组与json对象的常见操作技巧,需要的朋友可以参考下2019-02-02
vue如何统一样式(reset.css与border.css)
这篇文章主要介绍了vue如何统一样式(reset.css与border.css),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-05-05


最新评论