1.去后台获取数据,可以获取的到。
2.之后在提交数据(更新表单),确认表单数据提交上去了。在获取数据,获取不到已经修改的数据,这是为什么?
这是表单:
<el-dialog title="修改个人资料" :visible.sync="personalDetailVisible">
<el-form :model="personalForm" :rules="personalFormRules" ref="ruleForm2">
<el-form-item label="用户名" prop="personUserName">
<el-input v-model="personalForm.personUserName" :disabled="true"></el-input>
</el-form-item>
<el-form-item label="QQ" prop="qq">
<el-input placeholder="请输入QQ号" v-model="personalForm.qq"></el-input>
</el-form-item>
<el-form-item label="微信" prop="weixin">
<el-input placeholder="请输入微信号" v-model="personalForm.weixin"></el-input>
</el-form-item>
<el-form-item label="手机" prop="cellphone">
<el-input placeholder="请输入手机号" v-model="personalForm.cellphone"></el-input>
</el-form-item>
<el-form-item label="邮箱" prop="email">
<el-input placeholder="请输入邮箱" v-model="personalForm.email"></el-input>
</el-form-item>
<el-form-item label="电话" prop="phone">
<el-input placeholder="起输入电话号码" v-model="personalForm.phone"></el-input>
</el-form-item>
<el-form-item label="所属部门" prop="department">
<el-input placeholder="起输入所属部门" v-model="personalForm.department"></el-input>
</el-form-item>
<el-form-item label="角色" prop="role">
<el-input v-model="personalForm.role" :disabled="true"></el-input>
</el-form-item>
<el-button type="primary" @click="savePerDetail('ruleForm2')">更新</el-button>
<el-button type="primary" @click="changePerDetGoBack">返回</el-button>
</el-form>
</el-dialog>
这是获取数据的JS:
getuserdata() {
let _this = this;
this.$axios({
method: "post",
url: "/api/authController/getMenus",
data: qs.stringify({
token: this.token
})
}).then((response) => {
console.log(response)
let res = response.data.message.user;
_this.username = res.username;
_this.gender = res.gender;
_this.qq = res.qq;
_this.dianhua = res.phone;
_this.wechat = res.wechat;
_this.phone = res.mobile;
_this.email = res.email;
_this.realname = res.realname;
_this.position = res.position;
_this.department = res.department;
if (res.roleCode === "user") {
_this.roleCode = "用户"
}
if (res.roleCode === "administartor") {
_this.roleCode = "管理员"
}
})
},
这是提交数据的JS:
// 更新个人资料按钮
savePerDetail(formName) {
let _this = this;
this.$refs[formName].validate((valid)=>{
if (valid) {
this.$axios({
method: 'post',
url:'/api/userController/update',
data: qs.stringify({
token: this.token,
id: this.userId,
username: this.username,
qq: this.personalForm.qq,
wechat: this.personalForm.wexin,
mobile: this.personalForm.cellphone,
email: this.personalForm.email,
phone: this.personalForm.phone,
department: this.personalForm.department,
})
}).then((res)=>{
console.log(res)
if (res.data.code === 200) {
// this.getuserdata();
}
})
}
})
},
然后就是获取不到新的提交上去的数据 这是为啥啊? 求大佬解答
1.看你问题的描述应该是你提交给后端之后重新查询数据,获取到的还是旧的数据
2.所以确认一下,你获取到的数据到底是新的还是旧的,是在页面上看到的,还是在浏览器的devtool里看到的
3.如果在devtool看到的是旧的,那么看一下你传的参数是不是有问题,没问题就去找后端
4.如果是devtool看到的是新的,那么就是你的代码写的有问题,页面没有和数据同步