1.在/soup/edit中加入昵称修改,数据库更新方法,确保能执行先把uni-id-users.schema表中的username写入权限改为ture
//确认修改昵称
function usernameConfirm(e){
console.log(e);
userStore.updateUserInfo({username:e})
}
2.由于更新后页面数据没有发生变化,加入计算属性,computed响应,随数据变化
const userInfo = computed(()=>userStore.userInfo);
//computed是Vue中的一种特殊属性,它根据响应式数据的变化自动重新计算值。computed属性非常适合用于以下场景:
当你需要根据现有数据派生出一个新的数据时或一个数据结果受多个数据影响时。
当派生数据①的计算逻辑相对复杂,且可能在多个地方被引用时。
当你希望避免不必要的重复计算,通过缓存机制提高性能时。
3.在/soup/edit中加入性别修改,数据库更新方法,确保能执行先把uni-id-users.schema表中的gender写入权限改为ture
const genderValue =ref(userStore.userInfo.gender || 0);
//修改性别
function genderChange(e){
console.log(e);
genderValue.value=Number(e.detail.value)
}
//确认修改性别
function genderConfirm(){
userStore.updateUserInfo({gender:genderValue.value})
}
页面传值
<radio :value="item.value" :checked="genderValue==item.value" style="transform:scale(0.7)"/>
在选择里面选择后,gender.value就获得传值,然后点击确认键在进行数据库更改
由于以前field,开始登录没有获取gender,现在在user.js中修改增加
let res = await usersTable.where("'_id' == $cloudEnv_uid")
.field('mobile,username,email,avatar,wx_openid.mp as openid,register_date,gender')
.get()