我有一個登錄結束點,迴應我一個JSON。 我使用VUE路由器做一個POST,然後存儲在localStorage的令牌,但POST之後,JSON顯示在屏幕上:邏輯不工作後。然後
{"success":false,"message":"Login ou senha inválidos!"}
它應該返回頁面登錄,與消息
這是代碼:
var vmLogin = new Vue({
el: '#login',
data: {
email: '',
msg: '',
password: ''
},
beforeCreate: function() {
if(localStorage.getItem("timeTaskToken") !== null) {
window.location.href = '/'
}
},
methods: {
getLogin: function (e) {
this.$http.post('/login', {email: this.email, password: this.password}).then((response) => {
alert('teste!');
if(response.body.success === true) {
localStorage.setItem("timeTaskToken", response.body.token);
window.location.href = '/'
} else {
this.msg = response.body.message
}
}, (response) => {
// error callback
});
e.preventDefault();
}
}
});
登錄頁面
<form id="login" class="form-horizontal" method="post">
<h3>{{ msg }}</h3>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Email</label>
<div class="col-sm-10">
<input type="email" v-model="email" class="form-control" name="email" placeholder="Email">
</div>
</div>
<div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label">Password</label>
<div class="col-sm-10">
<input type="password" v-model="password" class="form-control" name="password" placeholder="Password">
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<div class="checkbox">
<label>
<input type="checkbox"> Remember me
</label>
</div>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-default" @click="getLogin">Sign
in</button>
</div>
</div>
</form>
這就像後。然後作品什麼?
返回的JSON纔出現在屏幕上。
我們可以在'#login'中看到模板嗎? – Bert
@Bert完成! 321 –
它看起來像你想'if(response.body.message.success === true)'。 – Bert