爱简收旧衣按件回收前端代码仓库
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

189 lines
6.3 KiB

"use strict";
const common_vendor = require("../../common/vendor.js");
const pages_mixins_pullRefreshMixin = require("../mixins/pullRefreshMixin.js");
const utils_ossUpload_oss_index = require("../../utils/oss-upload/oss/index.js");
const _sfc_main = {
mixins: [pages_mixins_pullRefreshMixin.pullRefreshMixin],
data() {
return {
statusBarHeight: 0,
navBarHeight: 44,
// px
navBarHeightRpx: 88,
// rpx
userInfo: {
nickname: "吴彦谋",
phone: "15888977617",
avatar: "",
newAvatar: "/static/logo.png"
},
uploadStatus: {
show: false,
type: "loading"
// loading, success, error
},
showPhone: false
};
},
computed: {
maskedPhone() {
return this.userInfo.phone ? "●".repeat(this.userInfo.phone.length) : "";
},
infoContainerStyle() {
return {
marginTop: this.navBarHeightRpx + "rpx"
};
}
},
onLoad() {
const sysInfo = common_vendor.index.getSystemInfoSync();
this.statusBarHeight = sysInfo.statusBarHeight;
let navBarHeight = 44;
try {
const menuButtonInfo = common_vendor.index.getMenuButtonBoundingClientRect();
navBarHeight = menuButtonInfo.bottom + menuButtonInfo.top - sysInfo.statusBarHeight;
} catch (e) {
}
this.navBarHeight = navBarHeight;
this.navBarHeightRpx = Math.round(navBarHeight * 750 / sysInfo.windowWidth);
if (common_vendor.index.getStorageSync("token")) {
this.$api("getUserByToken", {}, (res) => {
if (res.code === 200 && res.result) {
this.userInfo.nickname = res.result.nickName || "";
this.userInfo.phone = res.result.phone || "";
this.userInfo.avatar = res.result.headImage || "";
}
});
}
},
methods: {
async onRefresh() {
await new Promise((resolve) => setTimeout(resolve, 1e3));
common_vendor.index.stopPullRefresh();
},
goBack() {
common_vendor.index.navigateBack();
},
async chooseImage(res) {
try {
this.uploadStatus = { show: true, type: "loading" };
const url = await utils_ossUpload_oss_index.OSS.ossUpload(res.target.avatarUrl);
common_vendor.index.__f__("log", "at pages/subcomponent/edit_profile.vue:151", url, "url");
this.userInfo.avatar = url;
this.uploadStatus.type = "success";
setTimeout(() => {
this.uploadStatus.show = false;
}, 1e3);
} catch (error) {
this.uploadStatus = { show: true, type: "error" };
setTimeout(() => {
this.uploadStatus.show = false;
}, 1e3);
}
},
saveProfile() {
if (!this.userInfo.avatar)
return common_vendor.index.showToast({ title: "请上传头像", icon: "none" });
if (!this.userInfo.nickname)
return common_vendor.index.showToast({ title: "请填写昵称", icon: "none" });
if (!this.userInfo.phone)
return common_vendor.index.showToast({ title: "请填写手机号", icon: "none" });
this.uploadStatus = { show: true, type: "loading" };
common_vendor.index.__f__("log", "at pages/subcomponent/edit_profile.vue:166", this.userInfo, "this.userInfo");
this.$api("updateInfo", {
avatarUrl: this.userInfo.avatar,
nickName: this.userInfo.nickname,
phone: this.userInfo.phone
}, (res) => {
if (res.code === 200) {
setTimeout(() => {
common_vendor.index.$emit("refreshUserInfo");
common_vendor.index.showToast({ title: "保存成功", icon: "success" });
setTimeout(() => {
common_vendor.index.navigateBack();
}, 1e3);
}, 1e3);
} else {
this.uploadStatus.type = "error";
setTimeout(() => {
this.uploadStatus.show = false;
}, 1e3);
}
});
}
}
};
if (!Array) {
const _easycom_uni_icons2 = common_vendor.resolveComponent("uni-icons");
_easycom_uni_icons2();
}
const _easycom_uni_icons = () => "../../uni_modules/uni-icons/components/uni-icons/uni-icons.js";
if (!Math) {
_easycom_uni_icons();
}
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
return common_vendor.e({
a: common_vendor.p({
type: "left",
size: "20",
color: "#222"
}),
b: common_vendor.o((...args) => $options.goBack && $options.goBack(...args)),
c: $data.statusBarHeight + 88 + "rpx",
d: $data.statusBarHeight + "px",
e: $data.userInfo.nickname,
f: common_vendor.o(($event) => $data.userInfo.nickname = $event.detail.value),
g: $data.showPhone ? $data.userInfo.phone : $options.maskedPhone,
h: !$data.showPhone,
i: common_vendor.o((e) => {
if ($data.showPhone)
$data.userInfo.phone = e.detail.value;
}),
j: common_vendor.o(($event) => $data.showPhone = !$data.showPhone),
k: common_vendor.p({
type: $data.showPhone ? "eye" : "eye-slash",
size: "20",
color: "#999"
}),
l: !$data.userInfo.avatar
}, !$data.userInfo.avatar ? {
m: common_vendor.p({
type: "reload",
size: "24",
color: "#999"
})
} : {
n: $data.userInfo.avatar
}, {
o: common_vendor.o((...args) => $options.chooseImage && $options.chooseImage(...args)),
p: $data.userInfo.newAvatar
}, $data.userInfo.newAvatar ? {
q: $data.userInfo.newAvatar
} : {}, {
r: common_vendor.s($options.infoContainerStyle),
s: $data.uploadStatus.show
}, $data.uploadStatus.show ? common_vendor.e({
t: $data.uploadStatus.type === "loading"
}, $data.uploadStatus.type === "loading" ? {} : $data.uploadStatus.type === "success" ? {
w: common_vendor.p({
type: "checkmark",
size: "24",
color: "#fff"
})
} : $data.uploadStatus.type === "error" ? {
y: common_vendor.p({
type: "closeempty",
size: "24",
color: "#fff"
})
} : {}, {
v: $data.uploadStatus.type === "success",
x: $data.uploadStatus.type === "error"
}) : {}, {
z: common_vendor.o((...args) => $options.saveProfile && $options.saveProfile(...args)),
A: $data.navBarHeightRpx + "rpx"
});
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-c93de0a0"]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/subcomponent/edit_profile.js.map