uniapp 记住密码
uniapp 记住密码功能实现
在 uniapp 中实现记住密码功能,通常需要结合本地存储(如 uni.setStorageSync)和登录逻辑。以下是具体实现方法:
使用本地存储保存账号密码
通过 uni.setStorageSync 将用户输入的账号密码保存到本地:

// 用户登录时勾选记住密码
if (this.rememberPassword) {
uni.setStorageSync('username', this.username);
uni.setStorageSync('password', this.password);
}
页面加载时读取存储的账号密码
在页面 onLoad 或 onShow 生命周期中读取本地存储的数据:

onShow() {
const username = uni.getStorageSync('username');
const password = uni.getStorageSync('password');
if (username && password) {
this.username = username;
this.password = password;
this.rememberPassword = true; // 勾选记住密码复选框
}
}
安全增强处理
为了提升安全性,可以对密码进行简单加密或使用安全存储方案:
// 示例:Base64 编码存储(非绝对安全,仅作简单处理)
const encodedPassword = btoa(this.password);
uni.setStorageSync('password', encodedPassword);
// 读取时解码
const encodedPassword = uni.getStorageSync('password');
this.password = atob(encodedPassword);
提供清除密码选项
在用户退出登录或主动选择忘记密码时清除存储:
uni.removeStorageSync('username');
uni.removeStorageSync('password');
注意事项
- 敏感信息风险:明文存储密码存在安全隐患,建议仅在非敏感场景使用,或结合服务端 Token 机制。
- 用户提示:在隐私政策中说明密码存储方式,并提供是否允许的选项。
- 多端兼容:
uni.setStorageSync在 H5、App、小程序端均有效,但不同平台的存储周期可能不同。
通过以上方法,可以快速实现 uniapp 的记住密码功能,同时兼顾基础安全性。






