新建项目
This commit is contained in:
37
pages/rules/rules.js
Normal file
37
pages/rules/rules.js
Normal file
@@ -0,0 +1,37 @@
|
||||
Page({
|
||||
data: {
|
||||
rules: [
|
||||
{
|
||||
number: "01",
|
||||
title: "选择安全场地",
|
||||
copy: "仅在公园、校园、营地等获准且低车流区域游戏。远离机动车道、水域、施工区和陡坡。"
|
||||
},
|
||||
{
|
||||
number: "02",
|
||||
title: "抓捕不发生身体接触",
|
||||
copy: "发现目标后保持安全距离,通过动态口令或扫码确认。禁止拉扯、冲撞、围堵和危险追逐。"
|
||||
},
|
||||
{
|
||||
number: "03",
|
||||
title: "尊重公共与私人空间",
|
||||
copy: "不得进入住宅、厕所、商铺后场、封闭建筑或未经许可的区域躲藏。不给路人造成困扰。"
|
||||
},
|
||||
{
|
||||
number: "04",
|
||||
title: "随时可以安全退出",
|
||||
copy: "感到不适、迷路、天气变化或设备异常时立即停止游戏,告知房主并前往约定集合点。"
|
||||
},
|
||||
{
|
||||
number: "05",
|
||||
title: "保护位置隐私",
|
||||
copy: "不要截图或转发他人的位置和口令。游戏结束后不应保留或公开他人的精确行动轨迹。"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
accept() {
|
||||
wx.navigateBack({
|
||||
fail: () => wx.reLaunch({ url: "/pages/home/home" })
|
||||
});
|
||||
}
|
||||
});
|
||||
3
pages/rules/rules.json
Normal file
3
pages/rules/rules.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"navigationBarTitleText": "安全规则"
|
||||
}
|
||||
25
pages/rules/rules.wxml
Normal file
25
pages/rules/rules.wxml
Normal file
@@ -0,0 +1,25 @@
|
||||
<view class="page">
|
||||
<view class="rules-hero">
|
||||
<view class="rules-icon">+</view>
|
||||
<view class="eyebrow">SAFETY FIRST</view>
|
||||
<view class="title">安全永远高于胜负</view>
|
||||
<view class="subtitle">开始前请由房主带领所有玩家确认场地、集合点和以下规则。</view>
|
||||
</view>
|
||||
|
||||
<view class="rule-list">
|
||||
<view wx:for="{{rules}}" wx:key="number" class="rule-card">
|
||||
<view class="rule-number">{{item.number}}</view>
|
||||
<view>
|
||||
<view class="rule-title">{{item.title}}</view>
|
||||
<view class="rule-copy">{{item.copy}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="emergency-card">
|
||||
<view class="emergency-title">遇到紧急情况</view>
|
||||
<view class="emergency-copy">立即停止游戏并移动到安全位置,联系同行人员或当地紧急服务。小程序不能替代专业救援。</view>
|
||||
</view>
|
||||
|
||||
<button class="primary-button" bindtap="accept">我已了解</button>
|
||||
</view>
|
||||
74
pages/rules/rules.wxss
Normal file
74
pages/rules/rules.wxss
Normal file
@@ -0,0 +1,74 @@
|
||||
.rules-hero {
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
padding: 38rpx 30rpx;
|
||||
background: #fffdf7;
|
||||
border-radius: 32rpx;
|
||||
}
|
||||
|
||||
.rules-icon {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: 70rpx;
|
||||
height: 70rpx;
|
||||
margin-bottom: 24rpx;
|
||||
background: #d9ef72;
|
||||
border-radius: 24rpx;
|
||||
color: #183f31;
|
||||
font-size: 45rpx;
|
||||
font-weight: 900;
|
||||
}
|
||||
|
||||
.rule-list {
|
||||
margin: 32rpx 0;
|
||||
}
|
||||
|
||||
.rule-card {
|
||||
display: flex;
|
||||
gap: 22rpx;
|
||||
margin-bottom: 16rpx;
|
||||
padding: 26rpx;
|
||||
background: #fffdf7;
|
||||
border-radius: 24rpx;
|
||||
}
|
||||
|
||||
.rule-number {
|
||||
flex: 0 0 auto;
|
||||
color: #1d6b4f;
|
||||
font-size: 22rpx;
|
||||
font-weight: 900;
|
||||
letter-spacing: 2rpx;
|
||||
}
|
||||
|
||||
.rule-title {
|
||||
font-size: 28rpx;
|
||||
font-weight: 800;
|
||||
}
|
||||
|
||||
.rule-copy {
|
||||
margin-top: 10rpx;
|
||||
color: #68726c;
|
||||
font-size: 23rpx;
|
||||
line-height: 1.65;
|
||||
}
|
||||
|
||||
.emergency-card {
|
||||
margin-bottom: 28rpx;
|
||||
padding: 26rpx;
|
||||
background: #ffe8e5;
|
||||
border-radius: 24rpx;
|
||||
}
|
||||
|
||||
.emergency-title {
|
||||
color: #a63b35;
|
||||
font-size: 27rpx;
|
||||
font-weight: 800;
|
||||
}
|
||||
|
||||
.emergency-copy {
|
||||
margin-top: 10rpx;
|
||||
color: #9b504a;
|
||||
font-size: 23rpx;
|
||||
line-height: 1.6;
|
||||
}
|
||||
Reference in New Issue
Block a user