帮忙+新增包裹
40
app.json
@ -1,13 +1,51 @@
|
||||
{
|
||||
"pages": [
|
||||
"pages/help/index/index",
|
||||
"pages/savemoney/index/index",
|
||||
"pages/order/index/index",
|
||||
"pages/my/index/index",
|
||||
"pages/index/index",
|
||||
"pages/logs/logs"
|
||||
"pages/login/login",
|
||||
"pages/logs/logs",
|
||||
"pages/help/package/index"
|
||||
],
|
||||
"window": {
|
||||
"navigationBarTextStyle": "black",
|
||||
"navigationBarTitleText": "Weixin",
|
||||
"navigationBarBackgroundColor": "#ffffff"
|
||||
},
|
||||
"tabBar": {
|
||||
"color": "#999999",
|
||||
"selectedColor": "#4285FF",
|
||||
"backgroundColor": "#ffffff",
|
||||
"borderStyle": "white",
|
||||
"list": [
|
||||
{
|
||||
"pagePath": "pages/help/index/index",
|
||||
"text": "帮忙",
|
||||
"iconPath": "assets/icon/tabs/tab1@2x.png",
|
||||
"selectedIconPath": "assets/icon/tabs/tab1-active@2x.png"
|
||||
},
|
||||
{
|
||||
"pagePath": "pages/savemoney/index/index",
|
||||
"text": "省钱",
|
||||
"iconPath": "assets/icon/tabs/tab2@2x.png",
|
||||
"selectedIconPath": "assets/icon/tabs/tab2-active@2x.png"
|
||||
},
|
||||
{
|
||||
"pagePath": "pages/order/index/index",
|
||||
"text": "订单",
|
||||
"iconPath": "assets/icon/tabs/tab3@2x.png",
|
||||
"selectedIconPath": "assets/icon/tabs/tab3-active@2x.png"
|
||||
},
|
||||
{
|
||||
"pagePath": "pages/my/index/index",
|
||||
"text": "我的",
|
||||
"iconPath": "assets/icon/tabs/tab4@2x.png",
|
||||
"selectedIconPath": "assets/icon/tabs/tab4-active@2x.png"
|
||||
}
|
||||
]
|
||||
},
|
||||
"style": "v2",
|
||||
"componentFramework": "glass-easel",
|
||||
"sitemapLocation": "sitemap.json",
|
||||
|
||||
56
app.wxss
@ -1,10 +1,50 @@
|
||||
/**app.wxss**/
|
||||
.container {
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding: 200rpx 0;
|
||||
box-sizing: border-box;
|
||||
page{
|
||||
font-size:32rpx;
|
||||
line-height: 1;
|
||||
background-color:#F5F5F5;
|
||||
}
|
||||
|
||||
button label{
|
||||
display: inline-block;
|
||||
margin-left: 10rpx;
|
||||
}
|
||||
button .icon,button label{
|
||||
vertical-align: middle;
|
||||
}
|
||||
button:not([size=mini]){
|
||||
width:auto;
|
||||
/* height: 108rpx; */
|
||||
padding:30rpx 25rpx;
|
||||
font-size: 36rpx;
|
||||
}
|
||||
button:not([size=mini]) .icon{
|
||||
width:32rpx;height:32rpx;
|
||||
}
|
||||
|
||||
button[type=primary]{
|
||||
background-color:#1A4DEB;
|
||||
}
|
||||
button[type=primary]:hover{
|
||||
background-color:#043eec;
|
||||
}
|
||||
button[type=default]{
|
||||
color: #333333;
|
||||
font-size:32rpx;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
|
||||
radio-group label,radio-group radio{
|
||||
vertical-align: middle;
|
||||
}
|
||||
radio-group label{
|
||||
margin-left:14rpx;
|
||||
}
|
||||
|
||||
.page-container{
|
||||
background-color: #fff;
|
||||
border-radius: 20rpx;
|
||||
padding:30rpx;
|
||||
margin:20rpx;
|
||||
}
|
||||
BIN
assets/icon/help/arrow-down@2x.png
Normal file
|
After Width: | Height: | Size: 198 B |
BIN
assets/icon/help/arrow-right@2x.png
Normal file
|
After Width: | Height: | Size: 755 B |
BIN
assets/icon/help/house@2x.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
assets/icon/help/icon1.png
Normal file
|
After Width: | Height: | Size: 858 B |
BIN
assets/icon/help/icon2.png
Normal file
|
After Width: | Height: | Size: 981 B |
BIN
assets/icon/help/icon3.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
assets/icon/help/plus@2x.png
Normal file
|
After Width: | Height: | Size: 434 B |
BIN
assets/icon/help/send@2x.png
Normal file
|
After Width: | Height: | Size: 966 B |
BIN
assets/icon/help/take@2x.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
assets/icon/navbar/lanfeng@2x.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
assets/icon/tabs/tab1-active@2x.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
assets/icon/tabs/tab1@2x.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
assets/icon/tabs/tab2-active@2x.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
assets/icon/tabs/tab2@2x.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
assets/icon/tabs/tab3-active@2x.png
Normal file
|
After Width: | Height: | Size: 621 B |
BIN
assets/icon/tabs/tab3@2x.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
assets/icon/tabs/tab4-active@2x.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
assets/icon/tabs/tab4@2x.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
33
components/navbar/index.js
Normal file
@ -0,0 +1,33 @@
|
||||
// components/navBar.js
|
||||
Component({
|
||||
|
||||
/**
|
||||
* 组件的属性列表
|
||||
*/
|
||||
properties: {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 组件的初始数据
|
||||
*/
|
||||
data: {
|
||||
statusBarHeight:0,
|
||||
navBarHeight:44
|
||||
},
|
||||
lifetimes:{
|
||||
attached(){
|
||||
console.log('1212121212');
|
||||
const windowInfo = wx.getWindowInfo();
|
||||
this.setData({
|
||||
statusBarHeight:windowInfo.statusBarHeight
|
||||
})
|
||||
}
|
||||
},
|
||||
/**
|
||||
* 组件的方法列表
|
||||
*/
|
||||
methods: {
|
||||
|
||||
}
|
||||
})
|
||||
4
components/navbar/index.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {}
|
||||
}
|
||||
5
components/navbar/index.wxml
Normal file
@ -0,0 +1,5 @@
|
||||
<view class="nav-bar" style="padding-top:{{statusBarHeight}}px;">
|
||||
<view class="nav-bar-content" style="height:{{navBarHeight}}px;">
|
||||
<image class="logo" src="/assets/icon/navbar/lanfeng@2x.png"/>
|
||||
</view>
|
||||
</view>
|
||||
13
components/navbar/index.wxss
Normal file
@ -0,0 +1,13 @@
|
||||
/* components/navBar.wxss */
|
||||
.nav-bar{
|
||||
text-align: center;
|
||||
}
|
||||
.nav-bar-content{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
.nav-bar .logo{
|
||||
width:168rpx;
|
||||
height:42rpx;
|
||||
}
|
||||
71
pages/help/index/index.js
Normal file
@ -0,0 +1,71 @@
|
||||
// pages/help/index/index.js
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
index:0,
|
||||
array:[1,2,3,4]
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
|
||||
},
|
||||
goToAddPackage(){
|
||||
wx.navigateTo({
|
||||
url: '/pages/help/package/index',
|
||||
})
|
||||
}
|
||||
})
|
||||
6
pages/help/index/index.json
Normal file
@ -0,0 +1,6 @@
|
||||
{
|
||||
"usingComponents": {
|
||||
"nav-bar":"/components/navbar"
|
||||
},
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
53
pages/help/index/index.wxml
Normal file
@ -0,0 +1,53 @@
|
||||
<view>
|
||||
<view class="bg"></view>
|
||||
<nav-bar/>
|
||||
<picker bindchange="bindPickerChange" value="{{index}}" range="{{array}}">
|
||||
<view class="choose-community">
|
||||
<view class="text">选择小区</view>
|
||||
<image class="arrow" src="/assets/icon/help/arrow-down@2x.png"/>
|
||||
</view>
|
||||
</picker>
|
||||
<view class="address-panel">
|
||||
<picker>
|
||||
<view class="ap-item send">
|
||||
<image class="icon" src="/assets/icon/help/send@2x.png"/>
|
||||
<view class="text">
|
||||
<view class="title">朝阳时代西锦12栋1单元2072朝阳时代西锦12栋1单元2072</view>
|
||||
<view class="sub-title">周先生 13888888888</view>
|
||||
</view>
|
||||
<image class="arrow" src="/assets/icon/help/arrow-right@2x.png"/>
|
||||
</view>
|
||||
</picker>
|
||||
<view class="ap-item take" bind:tap="goToAddPackage">
|
||||
<image class="icon" src="/assets/icon/help/take@2x.png"/>
|
||||
<view class="text">
|
||||
<view class="title">送达地址</view>
|
||||
<view class="sub-title"></view>
|
||||
</view>
|
||||
<image class="arrow" src="/assets/icon/help/arrow-right@2x.png"/>
|
||||
</view>
|
||||
<view class="line"></view>
|
||||
<view class="bottom">
|
||||
<view class="item">
|
||||
<image class="icon" src="/assets/icon/help/icon1.png"/>
|
||||
<view class="text">方便快捷</view>
|
||||
</view>
|
||||
<view class="item">
|
||||
<image class="icon" src="/assets/icon/help/icon2.png"/>
|
||||
<view class="text">方便快捷</view>
|
||||
</view>
|
||||
<view class="item">
|
||||
<image class="icon" src="/assets/icon/help/icon3.png"/>
|
||||
<view class="text">方便快捷</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<button type="primary" class="order-button">立即下单</button>
|
||||
<view class="promotion-panel">
|
||||
<view class="text">
|
||||
<view class="title">您有<label class="spec">2张</label>免费跑腿券待领取</view>
|
||||
<view class="sub-title">先领券,再下单,立享免费跑腿</view>
|
||||
</view>
|
||||
<button class="button" type="primary">领</button>
|
||||
</view>
|
||||
</view>
|
||||
125
pages/help/index/index.wxss
Normal file
@ -0,0 +1,125 @@
|
||||
.bg{
|
||||
background: linear-gradient(180deg, #1A4DEB 62%, #F8F9FB 100%);
|
||||
height:90vw;
|
||||
width:100%;
|
||||
position:absolute;
|
||||
z-index:-1;
|
||||
}
|
||||
.choose-community{
|
||||
padding:90rpx 40rpx 70rpx;
|
||||
position: relative;
|
||||
color:#fff;
|
||||
font-size:0;
|
||||
}
|
||||
.choose-community .text{
|
||||
font-size:32rpx;
|
||||
display:inline-block;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.choose-community .arrow{
|
||||
width:20rpx;
|
||||
height:10rpx;
|
||||
vertical-align: middle;
|
||||
margin-left:20rpx;
|
||||
}
|
||||
|
||||
.address-panel{
|
||||
background-color: #fff;
|
||||
box-shadow: 0px 4px 8px 2px rgba(0, 0, 0, 0.05);
|
||||
border-radius: 20rpx;
|
||||
margin:0 20rpx;
|
||||
padding:0 30rpx 0 48rpx;
|
||||
}
|
||||
|
||||
.address-panel .ap-item{
|
||||
display:flex;
|
||||
align-items: center;
|
||||
color:#222222;
|
||||
line-height: 1.7;
|
||||
padding:34rpx 0;
|
||||
}
|
||||
.address-panel .ap-item .icon{
|
||||
width:40rpx;height:40rpx;
|
||||
align-self: flex-start;
|
||||
margin-top:3px
|
||||
}
|
||||
.address-panel .ap-item .text{
|
||||
flex:1;
|
||||
margin-left:30rpx;
|
||||
line-height: 1;
|
||||
}
|
||||
.address-panel .ap-item .text .title{
|
||||
line-height: 48rpx;
|
||||
}
|
||||
.address-panel .ap-item .text .sub-title{
|
||||
color:#7C8695;
|
||||
font-size: 14px;
|
||||
margin-top:22rpx;
|
||||
}
|
||||
.address-panel .arrow{
|
||||
width: 30rpx;height:30rpx;
|
||||
}
|
||||
.address-panel .line{
|
||||
border-bottom: 0.5px dashed rgba(124, 134, 149, 0.3);
|
||||
margin-top:26rpx;
|
||||
margin-right:10rpx;
|
||||
}
|
||||
|
||||
.address-panel .bottom{
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
margin-right:10rpx;
|
||||
padding:34rpx 0 40rpx 0;
|
||||
}
|
||||
.address-panel .bottom .item{
|
||||
font-size:0;
|
||||
line-height: 1;
|
||||
}
|
||||
.address-panel .bottom .icon{
|
||||
width:28rpx;height:28rpx;
|
||||
margin-top:0;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.address-panel .bottom .text{
|
||||
color: #7C8695;
|
||||
font-size: 24rpx;
|
||||
margin-left: 8rpx;
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.order-button{
|
||||
margin:40rpx 20rpx!important;
|
||||
}
|
||||
|
||||
.promotion-panel{
|
||||
display: flex;
|
||||
border: 1px solid rgba(26, 77, 235, 0.5);
|
||||
margin:44rpx 20rpx;
|
||||
border-radius: 20rpx;
|
||||
padding:32rpx 32rpx 32rpx 40rpx;
|
||||
align-items: center;
|
||||
}
|
||||
.promotion-panel .text{
|
||||
flex:1;
|
||||
}
|
||||
|
||||
.promotion-panel .text .title{
|
||||
font-size:34rpx;
|
||||
font-weight: 500;
|
||||
}
|
||||
.promotion-panel .text .title .spec{
|
||||
color: #1A4DEB;
|
||||
}
|
||||
|
||||
.promotion-panel .text .sub-title{
|
||||
font-size: 28rpx;
|
||||
color: #7C8695;
|
||||
margin-top:26rpx;
|
||||
}
|
||||
.promotion-panel .button{
|
||||
width:100rpx;
|
||||
height:100rpx;
|
||||
border-radius: 50%;
|
||||
padding:0;
|
||||
line-height: 100rpx;
|
||||
}
|
||||
65
pages/help/package/index.js
Normal file
@ -0,0 +1,65 @@
|
||||
// pages/help/package/index.js
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
|
||||
}
|
||||
})
|
||||
4
pages/help/package/index.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"usingComponents": {},
|
||||
"navigationStyle": "default"
|
||||
}
|
||||
54
pages/help/package/index.wxml
Normal file
@ -0,0 +1,54 @@
|
||||
<view class="page-container">
|
||||
<view class="head">
|
||||
<image class="icon" src="/assets/icon/help/house@2x.png"/>
|
||||
<view class="text">
|
||||
<view class="title">妈妈驿站(朝阳时代西锦)</view>
|
||||
<view class="sub-title">服务时间 10:00-80:30</view>
|
||||
</view>
|
||||
</view>
|
||||
<button type="default" class="button">
|
||||
<image src="/assets/icon/help/plus@2x.png" class="icon"/>
|
||||
<label>添加取件码</label>
|
||||
</button>
|
||||
</view>
|
||||
<view class="page-container">
|
||||
<view class="head">
|
||||
<image class="icon" src="/assets/icon/help/house@2x.png"/>
|
||||
<view class="text">
|
||||
<view class="title">菜鸟驿站(朝阳时代西锦)</view>
|
||||
<view class="sub-title">服务时间 10:00-21:00</view>
|
||||
</view>
|
||||
</view>
|
||||
<button type="default" class="button">
|
||||
<image src="/assets/icon/help/plus@2x.png" class="icon"/>
|
||||
<label>添加取件码</label>
|
||||
</button>
|
||||
</view>
|
||||
<view class="page-container">
|
||||
<radio-group class="radio" value="1">
|
||||
<label>
|
||||
<radio value="1" checked/>
|
||||
<label>敲门递件</label>
|
||||
</label>
|
||||
<label>
|
||||
<radio value="2"/>
|
||||
<label>放在门口</label>
|
||||
</label>
|
||||
</radio-group>
|
||||
</view>
|
||||
|
||||
<view class="page-container">
|
||||
<view class="kv-item">
|
||||
<view class="key">取件量</view>
|
||||
<view class="value">2</view>
|
||||
</view>
|
||||
<view class="kv-item">
|
||||
<view class="key">跑腿券</view>
|
||||
<view class="value yellow">0张</view>
|
||||
</view>
|
||||
<view class="kv-item">
|
||||
<view class="key">跑腿费</view>
|
||||
<view class="value red">¥3.5</view>
|
||||
</view>
|
||||
<view class="tips">*基础费3元 (含5件包裹) 超出部分0.5元/件</view>
|
||||
</view>
|
||||
55
pages/help/package/index.wxss
Normal file
@ -0,0 +1,55 @@
|
||||
.page-container{
|
||||
|
||||
}
|
||||
.page-container .head{
|
||||
display: flex;
|
||||
}
|
||||
.page-container .head .icon{
|
||||
width:40rpx;height:40rpx;
|
||||
|
||||
}
|
||||
.page-container .head .text{
|
||||
flex:1;
|
||||
padding-left:10rpx;
|
||||
}
|
||||
.page-container .head .title{
|
||||
font-size: 34rpx;
|
||||
}
|
||||
.page-container .head .sub-title{
|
||||
font-size:26rpx;
|
||||
color: #888888;
|
||||
margin-top:24rpx;
|
||||
}
|
||||
.page-container .button{
|
||||
margin-top:34rpx;
|
||||
}
|
||||
|
||||
.page-container .radio{
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
}
|
||||
|
||||
.page-container .kv-item{
|
||||
display:flex;
|
||||
margin:12rpx 0 50rpx 0;
|
||||
}
|
||||
.page-container .kv-item .key{
|
||||
font-size: 30rpx;
|
||||
}
|
||||
.page-container .kv-item .value{
|
||||
font-weight: 500;
|
||||
}
|
||||
.page-container .kv-item .yellow{
|
||||
color: #FF8400;
|
||||
}
|
||||
.page-container .kv-item .red{
|
||||
color: #EB0000;
|
||||
}
|
||||
.page-container .kv-item .key{
|
||||
flex:1
|
||||
}
|
||||
|
||||
.page-container .tips{
|
||||
font-size: 26rpx;
|
||||
color: #888888
|
||||
}
|
||||
@ -7,7 +7,7 @@
|
||||
<image class="avatar" src="{{userInfo.avatarUrl}}"></image>
|
||||
</button>
|
||||
<view class="nickname-wrapper">
|
||||
<text class="nickname-label">昵称</text>
|
||||
<text class="nickname-label">昵称1</text>
|
||||
<input type="nickname" class="nickname-input" placeholder="请输入昵称" bind:change="onInputChange" />
|
||||
</view>
|
||||
</block>
|
||||
@ -24,4 +24,10 @@
|
||||
<text class="user-motto">{{motto}}</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view>
|
||||
<navigator>123</navigator>
|
||||
<navigator>123</navigator>
|
||||
<navigator>123</navigator>
|
||||
</view>
|
||||
</scroll-view>
|
||||
|
||||
28
pages/login/login.js
Normal file
@ -0,0 +1,28 @@
|
||||
Page({
|
||||
data: {
|
||||
isAgree: false
|
||||
},
|
||||
|
||||
handleAgreeChange(e) {
|
||||
this.setData({
|
||||
isAgree: e.detail.value.length > 0
|
||||
})
|
||||
},
|
||||
|
||||
handleLogin() {
|
||||
if (!this.data.isAgree) {
|
||||
wx.showToast({
|
||||
title: '请先同意用户协议和隐私政策',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
wx.login({
|
||||
success: (res) => {
|
||||
// 实现登录逻辑
|
||||
console.log('登录成功', res)
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
4
pages/login/login.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"navigationStyle": "custom",
|
||||
"backgroundColor": "#4555FF"
|
||||
}
|
||||
34
pages/login/login.wxml
Normal file
@ -0,0 +1,34 @@
|
||||
<view class="login-container">
|
||||
<!-- 顶部导航区域 -->
|
||||
<view class="nav-area">
|
||||
<view class="home-icon">
|
||||
<image src="/assets/images/home.png" mode="aspectFit"></image>
|
||||
</view>
|
||||
<view class="more-icon">
|
||||
<image src="/assets/images/more.png" mode="aspectFit"></image>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 标题区域 -->
|
||||
<view class="title-area">
|
||||
<view class="main-title">闪兔到家</view>
|
||||
<view class="sub-title">一刻钟便民生活圈</view>
|
||||
</view>
|
||||
|
||||
<!-- 登录区域 -->
|
||||
<view class="login-area">
|
||||
<!-- 协议勾选 -->
|
||||
<view class="agreement">
|
||||
<checkbox-group bindchange="handleAgreeChange">
|
||||
<checkbox value="agree" checked="{{isAgree}}"/>
|
||||
<text>我已阅读并同意</text>
|
||||
<text class="link">《用户协议》</text>
|
||||
<text>与</text>
|
||||
<text class="link">《隐私政策》</text>
|
||||
</checkbox-group>
|
||||
</view>
|
||||
|
||||
<!-- 登录按钮 -->
|
||||
<button class="login-btn" hover-class="none" bindtap="handleLogin">手机号快捷登录</button>
|
||||
</view>
|
||||
</view>
|
||||
106
pages/login/login.wxss
Normal file
@ -0,0 +1,106 @@
|
||||
.login-container {
|
||||
min-height: 100vh;
|
||||
background-color: #4555FF;
|
||||
padding: 0 40rpx;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.nav-area {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
padding-top: 120rpx;
|
||||
}
|
||||
|
||||
.home-icon,
|
||||
.more-icon {
|
||||
width: 80rpx;
|
||||
height: 80rpx;
|
||||
background: rgba(255, 255, 255, 0.2);
|
||||
border-radius: 50%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.home-icon image,
|
||||
.more-icon image {
|
||||
width: 36rpx;
|
||||
height: 36rpx;
|
||||
}
|
||||
|
||||
.title-area {
|
||||
margin-top: 120rpx;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.main-title {
|
||||
font-size: 72rpx;
|
||||
font-weight: bold;
|
||||
margin-bottom: 24rpx;
|
||||
letter-spacing: 4rpx;
|
||||
}
|
||||
|
||||
.sub-title {
|
||||
font-size: 36rpx;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.login-area {
|
||||
position: fixed;
|
||||
left: 40rpx;
|
||||
right: 40rpx;
|
||||
bottom: 80rpx;
|
||||
}
|
||||
|
||||
.agreement {
|
||||
color: #fff;
|
||||
font-size: 26rpx;
|
||||
margin-bottom: 40rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.agreement checkbox-group {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.agreement .link {
|
||||
color: #fff;
|
||||
text-decoration: underline;
|
||||
padding: 0 4rpx;
|
||||
}
|
||||
|
||||
.login-btn {
|
||||
background: linear-gradient(90deg, #0BBFF5 0%, #4285FF 100%);
|
||||
color: #fff;
|
||||
font-size: 32rpx;
|
||||
font-weight: 500;
|
||||
border-radius: 45rpx;
|
||||
height: 100rpx;
|
||||
line-height: 100rpx;
|
||||
box-shadow: 0 8rpx 20rpx rgba(66, 133, 255, 0.3);
|
||||
}
|
||||
|
||||
.login-btn::after {
|
||||
border: none;
|
||||
}
|
||||
|
||||
checkbox .wx-checkbox-input {
|
||||
width: 32rpx;
|
||||
height: 32rpx;
|
||||
border-radius: 50%;
|
||||
border-color: rgba(255, 255, 255, 0.8);
|
||||
margin-right: 12rpx;
|
||||
}
|
||||
|
||||
checkbox .wx-checkbox-input.wx-checkbox-input-checked {
|
||||
background-color: #fff;
|
||||
border-color: #fff;
|
||||
}
|
||||
|
||||
checkbox .wx-checkbox-input.wx-checkbox-input-checked::before {
|
||||
color: #4555FF;
|
||||
font-size: 24rpx;
|
||||
}
|
||||
66
pages/my/index/index.js
Normal file
@ -0,0 +1,66 @@
|
||||
// pages/my/index/index.js
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
|
||||
}
|
||||
})
|
||||
3
pages/my/index/index.json
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
2
pages/my/index/index.wxml
Normal file
@ -0,0 +1,2 @@
|
||||
<!--pages/my/index/index.wxml-->
|
||||
<text>pages/my/index/index.wxml</text>
|
||||
1
pages/my/index/index.wxss
Normal file
@ -0,0 +1 @@
|
||||
/* pages/my/index/index.wxss */
|
||||
66
pages/order/index/index.js
Normal file
@ -0,0 +1,66 @@
|
||||
// pages/order/index/index.js
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
|
||||
}
|
||||
})
|
||||
3
pages/order/index/index.json
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
2
pages/order/index/index.wxml
Normal file
@ -0,0 +1,2 @@
|
||||
<!--pages/order/index/index.wxml-->
|
||||
<text>pages/order/index/index.wxml</text>
|
||||
1
pages/order/index/index.wxss
Normal file
@ -0,0 +1 @@
|
||||
/* pages/order/index/index.wxss */
|
||||
66
pages/savemoney/index/index.js
Normal file
@ -0,0 +1,66 @@
|
||||
// pages/savemoney/index/index.js
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
|
||||
}
|
||||
})
|
||||
3
pages/savemoney/index/index.json
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
2
pages/savemoney/index/index.wxml
Normal file
@ -0,0 +1,2 @@
|
||||
<!--pages/savemoney/index/index.wxml-->
|
||||
<text>pages/savemoney/index/index.wxml</text>
|
||||
1
pages/savemoney/index/index.wxss
Normal file
@ -0,0 +1 @@
|
||||
/* pages/savemoney/index/index.wxss */
|
||||
@ -24,5 +24,5 @@
|
||||
"tabIndent": "auto",
|
||||
"tabSize": 2
|
||||
},
|
||||
"appid": "wxede5da1043505ae7"
|
||||
"appid": "wx3cc5b7dcb28f2756"
|
||||
}
|
||||