本来记住密码功能也不复杂,在登陆的时候存储状态,在login页面加载时获取状态,把用户名和密码存储到cookie中,以及是否记住密码的状态也存储到cookie中,当时 状态也传进去了,取的时候看着也对,但是页面就是没有对应起来,以为是渲染不及时的问题,捣鼓了一阵儿,结果不是,, 突然 想起来 看看 存进去取出来的到底是啥类型的typeof ??结果还真是!!取得是字符串string,真是无语子,,,, checked: JSON.parse(getRememeberPass()) 就解决了 JSON.parse转为布尔值 。。。。
<template>
<div> <van-checkbox v-model="checked" shape="square">记住密码</van-checkbox> </div>
</template>
data() {
return {
username: '',
password: '',
checked: JSON.parse(getRememeberPass()),
}
},
mounted() {
this.isRemember()
},
methods: {
isRemember() {
if (this.checked === true) {
this.username = getUserName()
this.password = getPassword()
} else {
this.username = ''
this.password = ''
},
onLogin() {
this.$refs.form.validate().then(() => {
// 登录接口
}).catch(() => {
// 失败
})
setRememeberPass(this.checked)
}
}