first save

This commit is contained in:
2025-11-12 15:08:51 +08:00
commit c66fc54821
2885 changed files with 339178 additions and 0 deletions

View File

@@ -0,0 +1,201 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
if (!Array) {
const _component_ellipse = common_vendor.resolveComponent("ellipse");
const _component_circle = common_vendor.resolveComponent("circle");
const _component_path = common_vendor.resolveComponent("path");
const _component_rect = common_vendor.resolveComponent("rect");
const _component_svg = common_vendor.resolveComponent("svg");
(_component_ellipse + _component_circle + _component_path + _component_rect + _component_svg)();
}
const _sfc_main = {
__name: "compute",
setup(__props) {
const result = common_vendor.ref("win");
const score = common_vendor.ref("0");
const keys = [
{ value: "1", display: "1", type: "number" },
{ value: "2", display: "2", type: "number" },
{ value: "3", display: "3", type: "number" },
{ value: "+", display: "+", type: "operator" },
{ value: "×", display: "×", type: "delete" },
{ value: "4", display: "4", type: "number" },
{ value: "5", display: "5", type: "number" },
{ value: "6", display: "6", type: "number" },
{ value: "-", display: "-", type: "operator" },
{ value: "√", display: "√", type: "operator" },
{ value: "7", display: "7", type: "number" },
{ value: "8", display: "8", type: "number" },
{ value: "9", display: "9", type: "number" },
{ value: "submit", display: "提交", type: "submit" },
// 提交按钮在0的左侧
{ value: "0", display: "0", type: "number" }
];
const setResult = (res) => {
result.value = res;
};
const pressKey = (key, type) => {
if (type === "submit") {
if (score.value !== "0") {
common_vendor.index.showToast({
title: `分数 ${score.value} 已提交`,
icon: "success"
});
common_vendor.index.__f__("log", "at pages/compute/compute.vue:110", "提交分数:", score.value);
setTimeout(() => {
score.value = "0";
}, 1500);
}
} else if (key === "×") {
if (score.value.length > 1) {
score.value = score.value.slice(0, -1);
} else {
score.value = "0";
}
} else if (key === "√") {
try {
const result2 = Math.sqrt(parseFloat(score.value));
score.value = result2.toString();
} catch (error) {
score.value = "错误";
setTimeout(() => {
score.value = "0";
}, 1e3);
}
} else {
if (score.value === "0") {
score.value = key;
} else {
score.value += key;
}
}
};
const sumScore = () => {
common_vendor.index.showToast({
title: "合分功能需要与后端API交互",
icon: "none"
});
};
return (_ctx, _cache) => {
return {
a: common_vendor.p({
cx: "15",
cy: "20",
rx: "9",
ry: "6",
fill: "#ffffff"
}),
b: common_vendor.p({
cx: "15",
cy: "12",
r: "7",
fill: "#ffffff"
}),
c: common_vendor.p({
cx: "12",
cy: "8",
rx: "2",
ry: "4",
fill: "#ffffff"
}),
d: common_vendor.p({
cx: "18",
cy: "8",
rx: "2",
ry: "4",
fill: "#ffffff"
}),
e: common_vendor.p({
cx: "12",
cy: "8",
rx: "1",
ry: "3",
fill: "#ffb6c1"
}),
f: common_vendor.p({
cx: "18",
cy: "8",
rx: "1",
ry: "3",
fill: "#ffb6c1"
}),
g: common_vendor.p({
cx: "13",
cy: "12",
r: "1",
fill: "#333333"
}),
h: common_vendor.p({
cx: "17",
cy: "12",
r: "1",
fill: "#333333"
}),
i: common_vendor.p({
cx: "15",
cy: "14",
r: "0.8",
fill: "#ff69b4"
}),
j: common_vendor.p({
d: "M14,16 Q15,17 16,16",
stroke: "#ff69b4",
["stroke-width"]: "0.5",
fill: "none"
}),
k: common_vendor.p({
cx: "11",
cy: "13",
r: "1.5",
fill: "#ffb6c1",
opacity: "0.6"
}),
l: common_vendor.p({
cx: "19",
cy: "13",
r: "1.5",
fill: "#ffb6c1",
opacity: "0.6"
}),
m: common_vendor.p({
x: "10",
cy: "19",
width: "10",
height: "4",
fill: "#4169e1",
rx: "1"
}),
n: common_vendor.p({
cx: "20",
cy: "21",
r: "2",
fill: "#ffd700"
}),
o: common_vendor.p({
width: "30",
height: "30",
viewBox: "0 0 30 30"
}),
p: result.value === "win" ? 1 : "",
q: common_vendor.o(($event) => setResult("win")),
r: result.value === "lose" ? 1 : "",
s: common_vendor.o(($event) => setResult("lose")),
t: common_vendor.t(score.value),
v: common_vendor.o(sumScore),
w: common_vendor.f(keys, (key, k0, i0) => {
return {
a: common_vendor.t(key.display),
b: key.value,
c: key.type === "operator" ? 1 : "",
d: key.value === "-" ? 1 : "",
e: key.type === "submit" ? 1 : "",
f: common_vendor.o(($event) => pressKey(key.value, key.type), key.value)
};
})
};
};
}
};
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-5af9b656"]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/compute/compute.js.map

View File

@@ -0,0 +1,4 @@
{
"navigationBarTitleText": "",
"usingComponents": {}
}

View File

@@ -0,0 +1 @@
<view class="container data-v-5af9b656"><view class="table-header data-v-5af9b656"><view class="header-player data-v-5af9b656">玩家</view><view class="header-result data-v-5af9b656">胜负</view><view class="header-score data-v-5af9b656">得分</view></view><view class="player-row data-v-5af9b656"><view class="player-info data-v-5af9b656"><view class="player-avatar data-v-5af9b656"><svg wx:if="{{o}}" class="data-v-5af9b656" u-s="{{['d']}}" u-i="5af9b656-0" bind:__l="__l" u-p="{{o}}"><ellipse wx:if="{{a}}" class="data-v-5af9b656" u-i="5af9b656-1,5af9b656-0" bind:__l="__l" u-p="{{a}}"/><circle wx:if="{{b}}" class="data-v-5af9b656" u-i="5af9b656-2,5af9b656-0" bind:__l="__l" u-p="{{b}}"/><ellipse wx:if="{{c}}" class="data-v-5af9b656" u-i="5af9b656-3,5af9b656-0" bind:__l="__l" u-p="{{c}}"/><ellipse wx:if="{{d}}" class="data-v-5af9b656" u-i="5af9b656-4,5af9b656-0" bind:__l="__l" u-p="{{d}}"/><ellipse wx:if="{{e}}" class="data-v-5af9b656" u-i="5af9b656-5,5af9b656-0" bind:__l="__l" u-p="{{e}}"/><ellipse wx:if="{{f}}" class="data-v-5af9b656" u-i="5af9b656-6,5af9b656-0" bind:__l="__l" u-p="{{f}}"/><circle wx:if="{{g}}" class="data-v-5af9b656" u-i="5af9b656-7,5af9b656-0" bind:__l="__l" u-p="{{g}}"/><circle wx:if="{{h}}" class="data-v-5af9b656" u-i="5af9b656-8,5af9b656-0" bind:__l="__l" u-p="{{h}}"/><circle wx:if="{{i}}" class="data-v-5af9b656" u-i="5af9b656-9,5af9b656-0" bind:__l="__l" u-p="{{i}}"/><path wx:if="{{j}}" class="data-v-5af9b656" u-i="5af9b656-10,5af9b656-0" bind:__l="__l" u-p="{{j}}"/><circle wx:if="{{k}}" class="data-v-5af9b656" u-i="5af9b656-11,5af9b656-0" bind:__l="__l" u-p="{{k}}"/><circle wx:if="{{l}}" class="data-v-5af9b656" u-i="5af9b656-12,5af9b656-0" bind:__l="__l" u-p="{{l}}"/><rect wx:if="{{m}}" class="data-v-5af9b656" u-i="5af9b656-13,5af9b656-0" bind:__l="__l" u-p="{{m}}"/><circle wx:if="{{n}}" class="data-v-5af9b656" u-i="5af9b656-14,5af9b656-0" bind:__l="__l" u-p="{{n}}"/></svg></view><text class="player-name data-v-5af9b656">玩家59306</text></view><view class="result-buttons data-v-5af9b656"><view class="{{['result-btn', 'data-v-5af9b656', p && 'active']}}" bindtap="{{q}}">胜</view><view class="{{['result-btn', 'data-v-5af9b656', r && 'active']}}" bindtap="{{s}}">负</view></view><view class="score-display data-v-5af9b656"><text class="score-value data-v-5af9b656">{{t}}</text><button class="sum-btn data-v-5af9b656" bindtap="{{v}}">Σ 合分</button></view></view><view class="keyboard data-v-5af9b656"><view wx:for="{{w}}" wx:for-item="key" wx:key="b" class="{{['key', 'data-v-5af9b656', key.c && 'operator', key.d && 'minus', key.e && 'submit-key']}}" bindtap="{{key.f}}">{{key.a}}</view></view></view>

View File

@@ -0,0 +1,178 @@
.container.data-v-5af9b656 {
min-height: 100vh;
background-color: #f5f5f5;
padding-bottom: 240rpx; /* 为底部键盘留出空间 */
}
/* 顶部表头 */
.table-header.data-v-5af9b656 {
display: flex;
background-color: white;
padding: 30rpx 40rpx;
border-bottom: 1px solid #e0e0e0;
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 10;
}
.header-player.data-v-5af9b656 {
flex: 1;
font-size: 32rpx;
color: #333;
font-weight: 500;
}
.header-result.data-v-5af9b656 {
width: 200rpx;
font-size: 32rpx;
color: #333;
font-weight: 500;
text-align: center;
}
.header-score.data-v-5af9b656 {
width: 200rpx;
font-size: 32rpx;
color: #333;
font-weight: 500;
text-align: center;
}
/* 玩家信息区域 */
.player-row.data-v-5af9b656 {
display: flex;
align-items: center;
padding: 30rpx 40rpx;
border-bottom: 1px solid #f5f5f5;
background-color: white;
}
.player-info.data-v-5af9b656 {
flex: 1;
display: flex;
align-items: center;
}
.player-avatar.data-v-5af9b656 {
width: 80rpx;
height: 80rpx;
border-radius: 16rpx;
background-color: #1e3a8a;
display: flex;
align-items: center;
justify-content: center;
margin-right: 20rpx;
}
.player-name.data-v-5af9b656 {
font-size: 32rpx;
color: #333;
}
.result-buttons.data-v-5af9b656 {
width: 200rpx;
display: flex;
background-color: #f0f0f0;
border-radius: 8rpx;
padding: 4rpx;
}
.result-btn.data-v-5af9b656 {
flex: 1;
padding: 12rpx 0;
text-align: center;
font-size: 28rpx;
border-radius: 6rpx;
}
.result-btn.active.data-v-5af9b656 {
background-color: #6a5acd;
color: white;
}
.score-display.data-v-5af9b656 {
width: 200rpx;
display: flex;
align-items: center;
justify-content: space-between;
}
.score-value.data-v-5af9b656 {
font-size: 36rpx;
color: #333;
font-weight: 500;
}
.sum-btn.data-v-5af9b656 {
background-color: #6a5acd;
color: white;
border: none;
border-radius: 8rpx;
padding: 12rpx 20rpx;
font-size: 28rpx;
}
/* 固定在底部的数字键盘 */
.keyboard.data-v-5af9b656 {
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: 1px;
background-color: #e0e0e0;
padding: 1px;
position: fixed;
bottom: 0;
left: 0;
right: 0;
max-width: 750rpx;
margin: 0 auto;
}
.key.data-v-5af9b656 {
background-color: white;
display: flex;
align-items: center;
justify-content: center;
height: 120rpx;
font-size: 40rpx;
}
.key.data-v-5af9b656:active {
background-color: #f0f0f0;
}
.operator.data-v-5af9b656 {
color: #6a5acd;
}
.minus.data-v-5af9b656 {
color: #ff4757;
}
.submit-key.data-v-5af9b656 {
background-color: #8a2be2;
color: white;
font-weight: 500;
}
/* 调整键盘布局使提交按钮在0的左侧 */
.keyboard.data-v-5af9b656 {
grid-template-areas:
"num1 num2 num3 plus delete"
"num4 num5 num6 minus sqrt"
"num7 num8 num9 submit num0";
}
.key.data-v-5af9b656:nth-child(1) { grid-area: num1;
}
.key.data-v-5af9b656:nth-child(2) { grid-area: num2;
}
.key.data-v-5af9b656:nth-child(3) { grid-area: num3;
}
.key.data-v-5af9b656:nth-child(4) { grid-area: plus;
}
.key.data-v-5af9b656:nth-child(5) { grid-area: delete;
}
.key.data-v-5af9b656:nth-child(6) { grid-area: num4;
}
.key.data-v-5af9b656:nth-child(7) { grid-area: num5;
}
.key.data-v-5af9b656:nth-child(8) { grid-area: num6;
}
.key.data-v-5af9b656:nth-child(9) { grid-area: minus;
}
.key.data-v-5af9b656:nth-child(10) { grid-area: sqrt;
}
.key.data-v-5af9b656:nth-child(11) { grid-area: num7;
}
.key.data-v-5af9b656:nth-child(12) { grid-area: num8;
}
.key.data-v-5af9b656:nth-child(13) { grid-area: num9;
}
.key.data-v-5af9b656:nth-child(14) { grid-area: submit;
}
.key.data-v-5af9b656:nth-child(15) { grid-area: num0;
}

View File

@@ -0,0 +1,79 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
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();
}
const _sfc_main = {
__name: "history-game",
setup(__props) {
common_vendor.getCurrentInstance().proxy;
const filterActive = common_vendor.ref("all");
const filterClick = (type) => {
filterActive.value = type;
};
const userList = common_vendor.ref([
{
avatar: "https://q3.itc.cn/q_70/images03/20250110/1e71eecf56b34344bcae6a5b85c0bec2.jpeg",
name: "赵云",
score: 100
},
{
avatar: "https://q1.itc.cn/q_70/images03/20241119/197701bb9ef34b20b6497720081a9972.jpeg",
name: "张飞",
score: -50
},
{
avatar: "https://img1.baidu.com/it/u=3612220943,2414740890&fm=253&app=138&f=JPEG?w=526&h=500",
name: "刘备",
score: 30
},
{
avatar: "https://c-ssl.dtstatic.com/uploads/blog/202206/12/20220612135738_992b1.thumb.1000_0.jpg",
name: "诸葛亮",
score: -80
}
]);
return (_ctx, _cache) => {
return {
a: common_vendor.o(($event) => filterClick("all")),
b: filterActive.value == "all" ? 1 : "",
c: common_vendor.o(($event) => filterClick("win")),
d: filterActive.value == "win" ? 1 : "",
e: common_vendor.o(($event) => filterClick("lose")),
f: filterActive.value == "lose" ? 1 : "",
g: common_vendor.f(10, (item, k0, i0) => {
return {
a: "7f5ca2e3-0-" + i0,
b: common_vendor.f(userList.value, (user, index, i1) => {
return {
a: user.avatar,
b: common_vendor.t(user.name),
c: common_vendor.t(user.score),
d: index
};
}),
c: "7f5ca2e3-1-" + i0,
d: item
};
}),
h: common_vendor.p({
type: "trash",
size: "30"
}),
i: common_vendor.p({
type: "right",
size: "25",
color: "#748cec"
})
};
};
}
};
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-7f5ca2e3"]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/history-game/history-game.js.map

View File

@@ -0,0 +1,6 @@
{
"navigationBarTitleText": "历史记录",
"usingComponents": {
"uni-icons": "../../uni_modules/uni-icons/components/uni-icons/uni-icons"
}
}

View File

@@ -0,0 +1 @@
<view class="history-game data-v-7f5ca2e3"><view class="filter-tab data-v-7f5ca2e3"><view bindtap="{{a}}" class="{{['filter-item', 'data-v-7f5ca2e3', b && 'filter-active']}}">全部</view><view bindtap="{{c}}" class="{{['filter-item', 'data-v-7f5ca2e3', d && 'filter-active']}}">胜场</view><view bindtap="{{e}}" class="{{['filter-item', 'data-v-7f5ca2e3', f && 'filter-active']}}">负场</view></view><view class="game-list data-v-7f5ca2e3"><view wx:for="{{g}}" wx:for-item="item" wx:key="d" class="game-item data-v-7f5ca2e3"><view class="game-info data-v-7f5ca2e3"><view class="game-type data-v-7f5ca2e3">单人-1237房间</view><view class="game-date data-v-7f5ca2e3">2025-06-12 12:00</view><view class="del-btn data-v-7f5ca2e3"><uni-icons wx:if="{{h}}" class="data-v-7f5ca2e3" u-i="{{item.a}}" bind:__l="__l" u-p="{{h}}"></uni-icons></view></view><view class="game-user data-v-7f5ca2e3"><view wx:for="{{item.b}}" wx:for-item="user" wx:key="d" class="game-user-item data-v-7f5ca2e3"><view class="user-avatar data-v-7f5ca2e3"><image class="data-v-7f5ca2e3" src="{{user.a}}" mode="aspectFill"></image></view><view class="user-name data-v-7f5ca2e3">{{user.b}}</view><view class="user-score data-v-7f5ca2e3">{{user.c}}</view></view></view><view class="game-foot data-v-7f5ca2e3"><view class="game-status data-v-7f5ca2e3"> 已结束 </view><view class="check-detail data-v-7f5ca2e3"><uni-icons wx:if="{{i}}" class="data-v-7f5ca2e3" u-i="{{item.c}}" bind:__l="__l" u-p="{{i}}"></uni-icons></view></view></view></view></view>

View File

@@ -0,0 +1,116 @@
.history-game.data-v-7f5ca2e3 {
width: 750rpx;
margin: 0;
padding: 0;
box-sizing: border-box;
}
.filter-tab.data-v-7f5ca2e3 {
--filter-height: 80rpx;
--filter-color: #748cec;
--filter-border: 1rpx;
width: 700rpx;
height: var(--filter-height);
margin: 20rpx auto;
display: flex;
}
.filter-tab .filter-item.data-v-7f5ca2e3 {
flex: 1;
text-align: center;
line-height: calc(var(--filter-height) - 2 * var(--filter-border));
font-size: 32rpx;
color: #333333;
border: var(--filter-border) solid var(--filter-color);
}
.filter-tab .filter-active.data-v-7f5ca2e3 {
background-color: var(--filter-color);
color: #ffffff;
}
.game-list.data-v-7f5ca2e3 {
width: 700rpx;
margin: 0 auto;
}
.game-list .game-item.data-v-7f5ca2e3 {
width: 100%;
background-color: #ffffff;
margin: 20rpx 0;
box-shadow: 0 0 10rpx 0 rgba(0, 0, 0, 0.1);
border-radius: 20rpx;
padding: 20rpx;
box-sizing: border-box;
}
.game-list .game-item .game-info.data-v-7f5ca2e3 {
width: 100%;
height: 80rpx;
display: flex;
align-items: center;
justify-content: space-between;
}
.game-list .game-item .game-info .game-type.data-v-7f5ca2e3 {
font-size: 32rpx;
color: #333333;
}
.game-list .game-item .game-info .game-date.data-v-7f5ca2e3 {
font-size: 32rpx;
color: #bbbbbb;
}
.game-list .game-item .game-info .del-btn.data-v-7f5ca2e3 {
width: 80rpx;
height: 80rpx;
display: flex;
align-items: center;
justify-content: center;
border-left: 1rpx solid #cccccc;
}
.game-list .game-item .game-user.data-v-7f5ca2e3 {
width: 100%;
display: flex;
align-items: center;
justify-content: flex-start;
overflow: auto;
padding: 20rpx 0;
}
.game-list .game-item .game-user .game-user-item.data-v-7f5ca2e3 {
width: 140rpx;
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-between;
flex-shrink: 0;
}
.game-list .game-item .game-user .game-user-item .user-avatar.data-v-7f5ca2e3 {
width: 80rpx;
height: 80rpx;
border-radius: 10%;
overflow: hidden;
}
.game-list .game-item .game-user .game-user-item .user-avatar image.data-v-7f5ca2e3 {
width: 100%;
height: 100%;
}
.game-list .game-item .game-user .game-user-item .user-name.data-v-7f5ca2e3 {
font-size: 32rpx;
color: #000000;
}
.game-list .game-item .game-user .game-user-item .user-score.data-v-7f5ca2e3 {
font-size: 32rpx;
color: #fa5d5d;
margin-top: 10rpx;
}
.game-list .game-item .game-foot.data-v-7f5ca2e3 {
width: 100%;
height: 80rpx;
display: flex;
align-items: center;
justify-content: space-between;
}
.game-list .game-item .game-foot .game-status.data-v-7f5ca2e3 {
font-size: 32rpx;
color: #57bcef;
}
.game-list .game-item .game-foot .check-detail.data-v-7f5ca2e3 {
width: 80rpx;
height: 80rpx;
display: flex;
align-items: center;
justify-content: center;
}

View File

@@ -0,0 +1,33 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
require("../../api/login.js");
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();
}
const _sfc_main = {
__name: "index",
setup(__props) {
const gotoNewPage = () => {
common_vendor.wx$1.navigateTo({
url: "/pages/single/single"
});
};
return (_ctx, _cache) => {
return {
a: common_vendor.p({
type: "sound",
size: "20"
}),
b: common_vendor.o(gotoNewPage)
};
};
}
};
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-1cf27b2a"]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/index/index.js.map

View File

@@ -0,0 +1,6 @@
{
"navigationBarTitleText": "计分器",
"usingComponents": {
"uni-icons": "../../uni_modules/uni-icons/components/uni-icons/uni-icons"
}
}

View File

@@ -0,0 +1 @@
<view class="index data-v-1cf27b2a"><view class="notice data-v-1cf27b2a"><view class="icon data-v-1cf27b2a"><uni-icons wx:if="{{a}}" class="data-v-1cf27b2a" u-i="1cf27b2a-0" bind:__l="__l" u-p="{{a}}"></uni-icons></view><view class="text data-v-1cf27b2a"> 您还有未结束的对局, <text class="underline data-v-1cf27b2a">点击前往</text></view></view><view class="function-list data-v-1cf27b2a"><view class="function-item data-v-1cf27b2a"><view class="function-icon data-v-1cf27b2a"><image class="data-v-1cf27b2a" src="https://t14.baidu.com/it/u=3165460156,649373630&fm=224&app=112&f=JPEG?w=500&h=500"></image></view><view class="function-introduce data-v-1cf27b2a"><view class="function-name data-v-1cf27b2a"> 多人模式 </view><view class="function-desc data-v-1cf27b2a"> 所有玩家自己计分 </view></view></view><view class="function-item data-v-1cf27b2a" bindtap="{{b}}"><view class="function-icon data-v-1cf27b2a"><image class="data-v-1cf27b2a" src="https://pic.rmb.bdstatic.com/bjh/down/1742bc3845cbbcf0c78c01eb59bb1c1a.jpeg"></image></view><view class="function-introduce data-v-1cf27b2a"><view class="function-name data-v-1cf27b2a"> 单人模式 </view><view class="function-desc data-v-1cf27b2a"> 房主给所有玩家计分 </view></view></view><view class="function-item data-v-1cf27b2a"><view class="function-icon data-v-1cf27b2a"><image class="data-v-1cf27b2a" src="https://pic.rmb.bdstatic.com/bjh/down/1742bc3845cbbcf0c78c01eb59bb1c1a.jpeg"></image></view><view class="function-introduce data-v-1cf27b2a"><view class="function-name data-v-1cf27b2a"> 手动进入房间 </view><view class="function-desc data-v-1cf27b2a"> 输入房间id进入房间 </view></view></view><view class="function-item data-v-1cf27b2a"><view class="function-icon data-v-1cf27b2a"><image class="data-v-1cf27b2a" src="https://pic.rmb.bdstatic.com/bjh/down/1742bc3845cbbcf0c78c01eb59bb1c1a.jpeg"></image></view><view class="function-introduce data-v-1cf27b2a"><view class="function-name data-v-1cf27b2a"> 扫码加入房间 </view><view class="function-desc data-v-1cf27b2a"> 扫码房间二维码加入房间 </view></view></view></view></view>

View File

@@ -0,0 +1,88 @@
.index.data-v-1cf27b2a {
width: 750rpx;
margin: 0;
padding: 0;
box-sizing: border-box;
}
.notice.data-v-1cf27b2a {
width: 80%;
margin: 20rpx auto;
padding: 20rpx;
box-sizing: border-box;
display: flex;
flex-direction: row;
align-items: center;
justify-content: flex-start;
gap: 10rpx;
background-color: #fff;
box-shadow: 5rpx 5rpx 10rpx rgba(0, 0, 0, 0.1);
border-radius: 20rpx;
}
.notice .icon.data-v-1cf27b2a {
width: 40rpx;
height: 40rpx;
display: flex;
align-items: center;
justify-content: center;
box-sizing: border-box;
color: #fa5d5d;
}
.notice .text.data-v-1cf27b2a {
font-size: 32rpx;
font-weight: 400;
color: #000;
}
.notice .underline.data-v-1cf27b2a {
text-decoration: underline;
color: #fa5d5d;
}
.function-list.data-v-1cf27b2a {
width: 100%;
box-sizing: border-box;
}
.function-item.data-v-1cf27b2a {
--content-height: 100rpx;
width: 70%;
display: flex;
flex-direction: row;
align-items: center;
padding: 20rpx;
box-sizing: border-box;
background-color: #fff;
cursor: pointer;
margin: 40rpx auto;
box-shadow: 5rpx 5rpx 10rpx rgba(0, 0, 0, 0.1);
gap: 10rpx;
border-radius: 20rpx;
}
.function-item .function-icon.data-v-1cf27b2a {
width: var(--content-height);
height: var(--content-height);
border-radius: 10%;
overflow: hidden;
box-sizing: border-box;
flex-shrink: 0;
}
.function-item .function-icon image.data-v-1cf27b2a {
width: 100%;
height: 100%;
}
.function-item .function-introduce.data-v-1cf27b2a {
flex: 1;
height: var(--content-height);
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-start;
box-sizing: border-box;
}
.function-item .function-introduce .function-name.data-v-1cf27b2a {
font-size: 32rpx;
font-weight: 500;
color: #000;
}
.function-item .function-introduce .function-desc.data-v-1cf27b2a {
font-size: 26rpx;
font-weight: 400;
color: #a8a8a8;
}

View File

@@ -0,0 +1,98 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const utils_wxutils = require("../../utils/wxutils.js");
const api_user = require("../../api/user.js");
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();
}
const _sfc_main = {
__name: "my",
setup(__props) {
const proxy = common_vendor.getCurrentInstance().proxy;
const topHeight = common_vendor.ref(proxy.$StaticValue.getTopHeight());
const userInfo = common_vendor.ref({});
const getUserInfo = async () => {
var _a;
userInfo.value = proxy.$StaticValue.getUserInfo();
if (!((_a = userInfo.value) == null ? void 0 : _a.userId)) {
const openIdRes = await utils_wxutils.getOpenId();
const openId = openIdRes.openid;
userInfo.value = {
openId,
nickName: "用户" + openId.substring(0, 6)
};
api_user.register(userInfo.value).then((res) => {
api_user.login(userInfo.value).then((loginRes) => {
userInfo.value = loginRes.data;
proxy.$StaticValue.setUserInfo(userInfo.value);
});
});
}
};
common_vendor.onMounted(() => {
getUserInfo();
});
return (_ctx, _cache) => {
return {
a: common_vendor.t(userInfo.value.nickName),
b: topHeight.value,
c: topHeight.value,
d: userInfo.value.avatarUrl ? userInfo.value.avatarUrl : "https://pic.rmb.bdstatic.com/bjh/down/1742bc3845cbbcf0c78c01eb59bb1c1a.jpeg",
e: common_vendor.t(userInfo.value.nickName),
f: common_vendor.p({
type: "contact",
size: "20",
color: "#28b389"
}),
g: common_vendor.p({
type: "right",
size: "20"
}),
h: common_vendor.p({
type: "fire",
size: "20",
color: "#28b389"
}),
i: common_vendor.p({
type: "right",
size: "20"
}),
j: common_vendor.p({
type: "redo",
size: "20",
color: "#28b389"
}),
k: common_vendor.p({
type: "right",
size: "20"
}),
l: common_vendor.p({
type: "info",
size: "20",
color: "#28b389"
}),
m: common_vendor.p({
type: "right",
size: "20"
}),
n: common_vendor.p({
type: "chatboxes",
size: "20",
color: "#28b389"
}),
o: common_vendor.p({
type: "right",
size: "20"
})
};
};
}
};
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-2f1ef635"]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/my/my.js.map

View File

@@ -0,0 +1,7 @@
{
"navigationBarTitleText": "个人信息",
"navigationStyle": "custom",
"usingComponents": {
"uni-icons": "../../uni_modules/uni-icons/components/uni-icons/uni-icons"
}
}

View File

@@ -0,0 +1 @@
<view class="my data-v-2f1ef635"><view class="user-info data-v-2f1ef635"><view class="background data-v-2f1ef635"></view><view class="info-content data-v-2f1ef635"><view class="top-user-name data-v-2f1ef635" style="{{'height:' + b + ';' + ('line-height:' + c)}}">{{a}}</view><view class="avatars data-v-2f1ef635"><image class="avatar-img data-v-2f1ef635" src="{{d}}"></image></view><view class="hello-text data-v-2f1ef635"><view class="data-v-2f1ef635">你好,{{e}}</view><view class="data-v-2f1ef635">欢迎使用计分小程序</view></view></view></view><view class="section data-v-2f1ef635"><view class="list data-v-2f1ef635"><view class="row data-v-2f1ef635"><view class="left data-v-2f1ef635"><uni-icons wx:if="{{f}}" class="data-v-2f1ef635" u-i="2f1ef635-0" bind:__l="__l" u-p="{{f}}"></uni-icons><view class="text data-v-2f1ef635">更改头像昵称</view></view><view class="right data-v-2f1ef635"><uni-icons wx:if="{{g}}" class="data-v-2f1ef635" u-i="2f1ef635-1" bind:__l="__l" u-p="{{g}}"></uni-icons></view></view><view class="row data-v-2f1ef635"><view class="left data-v-2f1ef635"><uni-icons wx:if="{{h}}" class="data-v-2f1ef635" u-i="2f1ef635-2" bind:__l="__l" u-p="{{h}}"></uni-icons><view class="text data-v-2f1ef635">数据统计</view></view><view class="right data-v-2f1ef635"><view class="text data-v-2f1ef635">33</view><uni-icons wx:if="{{i}}" class="data-v-2f1ef635" u-i="2f1ef635-3" bind:__l="__l" u-p="{{i}}"></uni-icons></view></view><view class="row data-v-2f1ef635"><view class="left data-v-2f1ef635"><uni-icons wx:if="{{j}}" class="data-v-2f1ef635" u-i="2f1ef635-4" bind:__l="__l" u-p="{{j}}"></uni-icons><view class="text data-v-2f1ef635">分享给朋友</view></view><view class="right data-v-2f1ef635"><uni-icons wx:if="{{k}}" class="data-v-2f1ef635" u-i="2f1ef635-5" bind:__l="__l" u-p="{{k}}"></uni-icons></view></view></view></view><view class="section data-v-2f1ef635"><view class="list data-v-2f1ef635"><view class="row data-v-2f1ef635"><view class="left data-v-2f1ef635"><uni-icons wx:if="{{l}}" class="data-v-2f1ef635" u-i="2f1ef635-6" bind:__l="__l" u-p="{{l}}"></uni-icons><view class="text data-v-2f1ef635">使用说明</view></view><view class="right data-v-2f1ef635"><uni-icons wx:if="{{m}}" class="data-v-2f1ef635" u-i="2f1ef635-7" bind:__l="__l" u-p="{{m}}"></uni-icons></view></view><view class="row data-v-2f1ef635"><view class="left data-v-2f1ef635"><uni-icons wx:if="{{n}}" class="data-v-2f1ef635" u-i="2f1ef635-8" bind:__l="__l" u-p="{{n}}"></uni-icons><view class="text data-v-2f1ef635">建议与反馈</view></view><view class="right data-v-2f1ef635"><uni-icons wx:if="{{o}}" class="data-v-2f1ef635" u-i="2f1ef635-9" bind:__l="__l" u-p="{{o}}"></uni-icons></view></view></view></view></view>

View File

@@ -0,0 +1,92 @@
.my.data-v-2f1ef635 {
width: 750rpx;
margin: 0;
padding: 0;
}
.user-info.data-v-2f1ef635 {
--user-height: 500rpx;
width: 750rpx;
height: var(--user-height);
background-color: #f5f5f5;
position: relative;
}
.user-info .background.data-v-2f1ef635 {
width: 750rpx;
height: var(--user-height);
background-image: linear-gradient(#57ff57, #90fb90);
position: absolute;
top: 0;
left: 0;
z-index: 0;
}
.user-info .info-content.data-v-2f1ef635 {
width: 750rpx;
height: var(--user-height);
position: absolute;
top: 0;
left: 0;
z-index: 1;
}
.user-info .info-content .top-user-name.data-v-2f1ef635 {
width: 750rpx;
font-size: 40rpx;
font-weight: bold;
color: #000000;
padding: 0 20rpx;
box-sizing: border-box;
}
.user-info .info-content .avatars.data-v-2f1ef635 {
width: 750rpx;
display: flex;
justify-content: center;
margin-top: 20rpx;
}
.user-info .info-content .avatars .avatar-img.data-v-2f1ef635 {
width: 150rpx;
height: 150rpx;
border-radius: 75rpx;
border: 4rpx solid #ffffff;
}
.user-info .info-content .hello-text.data-v-2f1ef635 {
width: 750rpx;
text-align: center;
margin-top: 20rpx;
font-size: 30rpx;
color: #000000;
}
.user-info .info-content .hello-text p.data-v-2f1ef635 {
margin: 5rpx 0;
}
.section.data-v-2f1ef635 {
width: 690rpx;
margin: 50rpx auto;
border-radius: 10rpx;
box-shadow: 5rpx 5rpx 10rpx rgba(0, 0, 0, 0.1);
}
.section .list .row.data-v-2f1ef635 {
display: flex;
justify-content: space-between;
align-items: center;
border-radius: 5rpx;
padding: 0 30rpx;
height: 100rpx;
border: 1px solid #eee;
}
.section .list .rowlast-child.data-v-2f1ef635 {
border-bottom: 0;
}
.section .list .row .left.data-v-2f1ef635 {
display: flex;
align-items: center;
}
.section .list .row .left .text.data-v-2f1ef635 {
padding-left: 20rpx;
}
.section .list .row .right.data-v-2f1ef635 {
display: flex;
align-items: center;
}
.section .list .row .right .text.data-v-2f1ef635 {
font-size: 28rpx;
color: #aaa;
}

View File

@@ -0,0 +1,191 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const common_assets = require("../../common/assets.js");
if (!Array) {
const _easycom_uni_icons2 = common_vendor.resolveComponent("uni-icons");
const _easycom_l_popup2 = common_vendor.resolveComponent("l-popup");
const _easycom_uni_easyinput2 = common_vendor.resolveComponent("uni-easyinput");
(_easycom_uni_icons2 + _easycom_l_popup2 + _easycom_uni_easyinput2)();
}
const _easycom_uni_icons = () => "../../uni_modules/uni-icons/components/uni-icons/uni-icons.js";
const _easycom_l_popup = () => "../../uni_modules/lime-popup/components/l-popup/l-popup.js";
const _easycom_uni_easyinput = () => "../../uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js";
if (!Math) {
(_easycom_uni_icons + _easycom_l_popup + _easycom_uni_easyinput)();
}
const _sfc_main = {
__name: "single",
setup(__props) {
const gotoNewPage = () => {
common_vendor.wx$1.navigateTo({
url: "/pages/user-detail/user-detail"
});
};
const gotoNewPage1 = () => {
common_vendor.wx$1.navigateTo({
url: "/pages/compute/compute"
});
};
const isPopupVisible = common_vendor.ref(false);
const addplayer = () => {
isPopupVisible.value = true;
};
const virtueplayer = common_vendor.ref(false);
const addvirtue = () => {
isPopupVisible.value = false;
virtueplayer.value = true;
};
const closevirtue = () => {
virtueplayer.value = false;
};
const isPopupVisible1 = common_vendor.ref(false);
const transfer = () => {
isPopupVisible1.value = true;
};
const closetransfer = () => {
isPopupVisible1.value = false;
};
const isPopupVisible2 = common_vendor.ref(false);
const multiple = () => {
isPopupVisible2.value = true;
};
const closemultiple = () => {
isPopupVisible2.value = false;
};
const matchs = common_vendor.ref([
{
id: 1,
gametime: 1,
details: [
{ id: 101, score: "+10" },
{ id: 102, score: "+20" },
{ id: 103, score: "-30" }
]
},
{
id: 2,
gametime: 2,
details: [
{ id: 201, score: "+10" },
{ id: 202, score: "+20" },
{ id: 203, score: "-30" }
]
}
]);
const allscores = common_vendor.ref([
{
id: 301,
allscore: "+20"
},
{
id: 302,
allscore: "+40"
},
{
id: 303,
allscore: "-60"
}
]);
const players = common_vendor.ref([
{
id: 401,
name: "刘备",
avatar: "https://img1.baidu.com/it/u=3612220943,2414740890&fm=253&app=138&f=JPEG?w=526&h=500"
},
{
id: 401,
name: "赵云",
avatar: "https://q3.itc.cn/q_70/images03/20250110/1e71eecf56b34344bcae6a5b85c0bec2.jpeg"
},
{
id: 401,
name: "张飞",
avatar: "https://q1.itc.cn/q_70/images03/20241119/197701bb9ef34b20b6497720081a9972.jpeg"
}
]);
return (_ctx, _cache) => {
return {
a: common_vendor.p({
type: "plus"
}),
b: common_vendor.o(addplayer),
c: common_vendor.p({
type: "person-filled"
}),
d: common_vendor.o(transfer),
e: common_vendor.o(() => {
}),
f: common_vendor.o(() => {
}),
g: common_vendor.f(players.value, (item, index, i0) => {
return {
a: item.avatar,
b: common_vendor.t(item.name),
c: index,
d: common_vendor.o(gotoNewPage, index)
};
}),
h: common_vendor.f(allscores.value, (item, index, i0) => {
return {
a: common_vendor.t(item.allscore),
b: item.id
};
}),
i: common_vendor.f(matchs.value, (match, k0, i0) => {
return {
a: common_vendor.t(match.gametime),
b: common_vendor.f(match.details, (item, index, i1) => {
return {
a: common_vendor.t(item.score),
b: item.id
};
}),
c: match.id
};
}),
j: common_vendor.o(gotoNewPage1),
k: common_vendor.o(multiple),
l: common_assets._imports_0,
m: common_vendor.o(addvirtue),
n: common_vendor.o(($event) => isPopupVisible.value = $event),
o: common_vendor.p({
closeable: true,
modelValue: isPopupVisible.value
}),
p: common_vendor.o(closetransfer),
q: common_vendor.o(($event) => isPopupVisible1.value = $event),
r: common_vendor.p({
closeable: true,
modelValue: isPopupVisible1.value
}),
s: common_vendor.o(($event) => _ctx.value = $event),
t: common_vendor.p({
placeholder: "请输入名称",
modelValue: _ctx.value
}),
v: common_vendor.o(closevirtue),
w: common_vendor.o(closevirtue),
x: common_vendor.o(($event) => virtueplayer.value = $event),
y: common_vendor.p({
closeable: true,
modelValue: virtueplayer.value
}),
z: common_vendor.o(($event) => _ctx.value = $event),
A: common_vendor.p({
placeholder: "请输入倍率",
modelValue: _ctx.value
}),
B: common_vendor.o(closemultiple),
C: common_vendor.o(closemultiple),
D: common_vendor.o(($event) => isPopupVisible2.value = $event),
E: common_vendor.p({
closeable: true,
modelValue: isPopupVisible2.value
})
};
};
}
};
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-6410b918"]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/single/single.js.map

View File

@@ -0,0 +1,8 @@
{
"navigationBarTitleText": "单人-房间",
"usingComponents": {
"uni-icons": "../../uni_modules/uni-icons/components/uni-icons/uni-icons",
"l-popup": "../../uni_modules/lime-popup/components/l-popup/l-popup",
"uni-easyinput": "../../uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput"
}
}

View File

@@ -0,0 +1 @@
<view class="single data-v-6410b918"><view class="single-lan data-v-6410b918"><button class="data-v-6410b918" bindtap="{{b}}"><uni-icons wx:if="{{a}}" class="data-v-6410b918" u-i="6410b918-0" bind:__l="__l" u-p="{{a}}"></uni-icons><text class="data-v-6410b918">添加玩家</text></button><button class="data-v-6410b918" bindtap="{{d}}"><uni-icons wx:if="{{c}}" class="data-v-6410b918" u-i="6410b918-1" bind:__l="__l" u-p="{{c}}"></uni-icons><text class="data-v-6410b918">转让计分员</text></button><view class="lan-switch data-v-6410b918"><switch class="data-v-6410b918" bindchange="{{e}}"/><text class="data-v-6410b918">语音播报</text></view><view class="lan-switch data-v-6410b918"><switch class="data-v-6410b918" bindchange="{{f}}"/><text class="data-v-6410b918">台版</text></view></view><view class="single-detail data-v-6410b918"><text class="sing-detail-title data-v-6410b918">对局记录</text><text class="data-v-6410b918">点击对局分数进行修改</text></view><view class="single-score data-v-6410b918"><text style="color:red" class="score-remind data-v-6410b918"> 点击头像编辑自己的昵称和性别~ </text><view class="single-score-record data-v-6410b918"><view class="score-record-player data-v-6410b918"><text class="score-head data-v-6410b918">玩家</text><view wx:for="{{g}}" wx:for-item="item" wx:key="c" class="player data-v-6410b918" bindtap="{{item.d}}"><image class="data-v-6410b918" src="{{item.a}}" mode="widthFix"></image><text class="data-v-6410b918">{{item.b}}</text></view></view><view class="score-record-all data-v-6410b918"><text class="score-head data-v-6410b918">总分</text><view wx:for="{{h}}" wx:for-item="item" wx:key="b" class="all-score data-v-6410b918">{{item.a}}</view></view><view wx:for="{{i}}" wx:for-item="match" wx:key="c" class="score-record-all data-v-6410b918"><text class="score-head data-v-6410b918">第{{match.a}}局</text><view wx:for="{{match.b}}" wx:for-item="item" wx:key="b" class="all-score data-v-6410b918">{{item.a}}</view></view></view></view><view class="single-bottom data-v-6410b918"><button class="data-v-6410b918" style="color:aliceblue;background-color:rgb(55, 47, 172)" bindtap="{{j}}"> 开局计分</button><button class="data-v-6410b918" bindtap="{{k}}">结算房间</button></view><l-popup wx:if="{{o}}" class="data-v-6410b918" u-s="{{['d']}}" u-i="6410b918-2" bind:__l="__l" bindupdateModelValue="{{n}}" u-p="{{o}}"><view class="popup-add data-v-6410b918"><view class="tilte data-v-6410b918"><text class="title data-v-6410b918">扫码加入房间</text></view><view class="line data-v-6410b918"></view><text class="small data-v-6410b918">邀请好友扫描下方二维码加入房间</text><image class="data-v-6410b918" src="{{l}}" mode=""></image><button class="share data-v-6410b918">分享给好友邀请加入房间</button><button class="hand data-v-6410b918" bindtap="{{m}}">手动添加虚拟玩家</button></view></l-popup><l-popup wx:if="{{r}}" class="data-v-6410b918" u-s="{{['d']}}" u-i="6410b918-3" bind:__l="__l" bindupdateModelValue="{{q}}" u-p="{{r}}"><view class="popup-add data-v-6410b918"><view class="tilte data-v-6410b918"><text class="title data-v-6410b918">提示</text></view><view class="line data-v-6410b918"></view><text class="small data-v-6410b918">房间内暂无扫码或分享加入房间的玩家,暂时无法转让计分员</text><button class="data-v-6410b918" bindtap="{{p}}">确定</button></view></l-popup><l-popup wx:if="{{y}}" class="data-v-6410b918" u-s="{{['d']}}" u-i="6410b918-4" bind:__l="__l" bindupdateModelValue="{{x}}" u-p="{{y}}"><view class="popup-virtue data-v-6410b918"><view class="tilte data-v-6410b918"><text class="title data-v-6410b918">添加玩家</text></view><view class="line data-v-6410b918"></view><view class="lan-input data-v-6410b918"><uni-easyinput wx:if="{{t}}" class="data-v-6410b918" style="width:500rpx" u-i="6410b918-5,6410b918-4" bind:__l="__l" bindupdateModelValue="{{s}}" u-p="{{t}}"></uni-easyinput></view><view class="lan-button data-v-6410b918"><button class="data-v-6410b918" bindtap="{{v}}">取消</button><button class="data-v-6410b918" bindtap="{{w}}">确定</button></view></view></l-popup><l-popup wx:if="{{E}}" class="data-v-6410b918" u-s="{{['d']}}" u-i="6410b918-6" bind:__l="__l" bindupdateModelValue="{{D}}" u-p="{{E}}"><view class="popup-virtue data-v-6410b918"><view class="tilte data-v-6410b918"><text class="title data-v-6410b918" style="font-weight:600">输入倍率,快速结算!</text></view><view class="line data-v-6410b918"></view><view class="lan-input data-v-6410b918"><uni-easyinput wx:if="{{A}}" class="data-v-6410b918" style="width:400rpx" u-i="6410b918-7,6410b918-6" bind:__l="__l" bindupdateModelValue="{{z}}" u-p="{{A}}"></uni-easyinput></view><view class="lan-button data-v-6410b918"><button class="data-v-6410b918" bindtap="{{B}}">取消</button><button class="data-v-6410b918" bindtap="{{C}}">确定</button></view></view></l-popup></view>

View File

@@ -0,0 +1,204 @@
.single .single-lan.data-v-6410b918 {
display: flex;
border-bottom: 1.5px solid #ededed;
margin-top: 10rpx;
padding-bottom: 10rpx;
padding-right: 13rpx;
}
.single .single-lan button.data-v-6410b918::after {
border: none;
display: none;
}
.single .single-lan button.data-v-6410b918 {
padding: 0;
font-size: 14.4px;
border: 0;
outline: none;
background-color: #fff;
}
.single .single-lan button text.data-v-6410b918 {
color: #666666;
}
.single .single-lan .lan-switch.data-v-6410b918 {
display: flex;
align-items: center;
}
.single .single-lan .lan-switch switch.data-v-6410b918 {
transform: scale(0.7);
}
.single .single-lan .lan-switch text.data-v-6410b918 {
font-size: 14.4px;
color: #666666;
}
.single .single-detail.data-v-6410b918 {
display: flex;
align-items: center;
border-bottom: 1rpx solid #ededed;
padding: 20rpx 0;
}
.single .single-detail .sing-detail-title.data-v-6410b918 {
font-weight: 600;
font-size: 37rpx;
padding: 0 12rpx;
color: black;
}
.single .single-detail text.data-v-6410b918 {
font-size: 29rpx;
color: #666666;
}
.single .single-score.data-v-6410b918 {
padding-top: 20rpx;
display: flex;
flex-direction: column;
}
.single .single-score .score-remind.data-v-6410b918 {
align-self: center;
font-size: 29rpx;
padding-bottom: 20rpx;
}
.single .single-score .score-record-player.data-v-6410b918 {
display: flex;
margin: 30rpx 0;
}
.single .single-score .score-record-player .score-head.data-v-6410b918 {
width: 90rpx;
align-self: center;
padding: 10rpx;
}
.single .single-score .score-record-player .player.data-v-6410b918 {
width: 160rpx;
display: flex;
flex-direction: column;
align-items: center;
}
.single .single-score .score-record-player .player image.data-v-6410b918 {
width: 100rpx;
}
.single .single-score .score-record-all.data-v-6410b918 {
display: flex;
}
.single .single-score .score-record-all .score-head.data-v-6410b918 {
margin: 10rpx 0;
width: 90rpx;
align-self: center;
padding: 10rpx;
}
.single .single-score .score-record-all .all-score.data-v-6410b918 {
display: flex;
width: 160rpx;
align-items: center;
justify-content: center;
}
.single .single-bottom.data-v-6410b918 {
position: fixed;
bottom: 0;
left: 0;
right: 0;
background: white;
padding: 20rpx;
display: flex;
justify-content: center;
gap: 20rpx;
box-shadow: 0 -2rpx 10rpx rgba(0, 0, 0, 0.1);
}
.single .single-bottom button.data-v-6410b918 {
width: 350rpx;
border: 2rpx solid #372fac;
}
.single .popup-add.data-v-6410b918 {
width: 600rpx;
display: flex;
flex-direction: column;
align-items: center;
padding-top: 20rpx;
padding-bottom: 25rpx;
}
.single .popup-add .title.data-v-6410b918 {
font-size: 38rpx;
padding-bottom: 20rpx;
}
.single .popup-add .title text.data-v-6410b918 {
padding: 0 100rpx;
}
.single .popup-add .line.data-v-6410b918 {
width: 580rpx;
height: 0.1rpx;
background-color: #d3d3d3;
margin-top: 30rpx;
}
.single .popup-add .small.data-v-6410b918 {
padding-top: 30rpx;
color: #666666;
width: 450rpx;
font-size: 28rpx;
margin-bottom: 10rpx;
}
.single .popup-add .share.data-v-6410b918 {
margin-top: 30rpx;
}
.single .popup-add image.data-v-6410b918 {
width: 400rpx;
height: 400rpx;
margin-top: 20rpx;
}
.single .popup-add button.data-v-6410b918 {
margin-top: 15rpx;
width: 450rpx;
font-size: 30rpx;
margin-bottom: 15rpx;
background-color: #372fac;
color: #fff;
}
.single .popup-virtue.data-v-6410b918 {
width: 600rpx;
display: flex;
flex-direction: column;
align-items: center;
padding-top: 20rpx;
padding-bottom: 25rpx;
}
.single .popup-virtue .title.data-v-6410b918 {
font-size: 38rpx;
padding-bottom: 20rpx;
margin-bottom: 20rpx;
}
.single .popup-virtue .title text.data-v-6410b918 {
padding: 0 100rpx;
}
.single .popup-virtue .line.data-v-6410b918 {
width: 580rpx;
height: 0.1rpx;
background-color: #d3d3d3;
margin-top: 30rpx;
margin-bottom: 50rpx;
}
.single .popup-virtue .small.data-v-6410b918 {
padding-top: 30rpx;
color: #666666;
width: 450rpx;
font-size: 28rpx;
margin-bottom: 10rpx;
}
.single .popup-virtue .share.data-v-6410b918 {
margin-top: 30rpx;
}
.single .popup-virtue image.data-v-6410b918 {
width: 400rpx;
height: 400rpx;
margin-top: 20rpx;
}
.single .popup-virtue uni-easyinput.data-v-6410b918 {
padding-top: 30rpx;
}
.single .popup-virtue .lan-button.data-v-6410b918 {
padding-top: 50rpx;
display: flex;
}
.single .popup-virtue button.data-v-6410b918 {
margin-top: 15rpx;
width: 260rpx;
margin: 0 12rpx;
font-size: 30rpx;
background-color: #372fac;
color: #fff;
}

View File

@@ -0,0 +1,47 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = {
__name: "user-detail",
setup(__props) {
const nickname = common_vendor.ref("玩家59306");
const changeAvatar = () => {
common_vendor.index.chooseImage({
count: 1,
sizeType: ["compressed"],
sourceType: ["album", "camera"],
success: (res) => {
common_vendor.index.showToast({
title: "头像已更新",
icon: "success"
});
}
});
};
const saveUserInfo = () => {
if (!nickname.value.trim()) {
common_vendor.index.showToast({
title: "昵称不能为空",
icon: "none"
});
return;
}
common_vendor.index.showToast({
title: "用户信息已保存",
icon: "success"
});
setTimeout(() => {
common_vendor.index.navigateBack();
}, 1500);
};
return (_ctx, _cache) => {
return {
a: nickname.value,
b: common_vendor.o(($event) => nickname.value = $event.detail.value),
c: common_vendor.o(changeAvatar),
d: common_vendor.o(saveUserInfo)
};
};
}
};
wx.createPage(_sfc_main);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/user-detail/user-detail.js.map

View File

@@ -0,0 +1,4 @@
{
"navigationBarTitleText": "用户信息",
"usingComponents": {}
}

View File

@@ -0,0 +1 @@
<view class="container"><view class="form-content"><view class="form-item"><view class="form-label">昵称:</view><input type="text" class="input-field" placeholder="请输入昵称" value="{{a}}" bindinput="{{b}}"/></view><view class="form-item"><view class="form-label">头像:</view><view class="avatar-container"><view class="avatar-preview" bindtap="{{c}}"></view><view class="avatar-tip">点击更新头像</view></view></view></view><button class="save-btn" bindtap="{{d}}">保存</button></view>

View File

@@ -0,0 +1,83 @@
page{
background-color: rgb(240, 243, 245);
}
.container {
min-height: 100vh;
background-color: #f5f5f5;
}
/* 页面头部 */
.page-header {
background-color: #6a5acd;
color: white;
padding: 40rpx;
text-align: center;
}
.page-title {
font-size: 36rpx;
font-weight: 600;
}
/* 表单内容 */
.form-content {
padding: 20rpx 40rpx;
margin-top: 30rpx;
margin-left: 15rpx;
margin-right: 15rpx;
background-color: #fff;
border-radius: 20rpx;
}
.form-item {
display: flex;
align-items: center;
margin-bottom: 50rpx;
}
.form-label {
width: 160rpx;
font-size: 32rpx;
color: #333;
font-weight: 500;
}
.input-field {
flex: 1;
padding: 20rpx 30rpx;
border: 1px solid #e0e0e0;
border-radius: 12rpx;
font-size: 32rpx;
outline: none;
background-color: #f9f9f9;
}
.avatar-container {
display: flex;
flex-direction: column;
align-items: center;
}
.avatar-preview {
width: 160rpx;
height: 160rpx;
border-radius: 16rpx;
overflow: hidden;
margin-bottom: 16rpx;
background-color: #1e3a8a;
display: flex;
justify-content: center;
align-items: center;
}
.avatar-tip {
color: #999;
font-size: 28rpx;
}
/* 保存按钮 */
.save-btn {
background-color: rgb(55, 47, 172);
color: white;
border: none;
border-radius: 13rpx;
width: 550rpx;
font-size: 36rpx;
font-weight: 500;
margin-top: 40rpx;
}