c631d055 by simon

no message

1 parent 032992c4
Showing 96 changed files with 1515 additions and 418 deletions
......@@ -11,7 +11,7 @@ module.exports = {
"enabledQcloud": false, //是否开启腾讯云COS 上传功能
// 腾讯云COS 上传功能配置表
"qcloud": {
"appid": "1111111",
"appid": "wx7122e6d18bb8f6ea",
"secretId": "xxx",
"secretKey": "xxxxx",
"bucket": "xxxx",
......
......@@ -8,7 +8,7 @@
"minified": true,
"newFeature": true
},
"appid": "wxc57ed87f2569f701",
"appid": "wx7122e6d18bb8f6ea",
"projectname": "gulp-example",
"condition": {}
}
......
......@@ -8,18 +8,74 @@ let store = require('./utils/stroage');
require('./http/mock-data');
App({
get: fetchApi.fetch,
post: (params) => {
params.method = 'post';
return fetchApi.fetch(params);
},
api: api,
config: config,
router: router,
store: store,
onLaunch: function () {},
globalData: {
indexInfo: null,
userInfo: null
}
get: fetchApi.fetch,
post: (params) => {
params.method = 'post';
return fetchApi.fetch(params);
},
api: api,
config: config,
router: router,
store: store,
onLaunch: function () {
this.share()
},
globalData: {
indexInfo: null,
userInfo: null,
wxcode: store.getItem("wxcode"),
tlMemberCode: "",
},
//重写分享方法
share: function () {
//监听路由切换
//间接实现全局设置分享内容
wx.onAppRoute(function (res) {
//获取加载的页面
let pages = getCurrentPages();
//获取当前页面的对象
let view = pages[pages.length - 1];
let data;
if (view) {
data = view.data;
if (!data.isOverShare) {
data.isOverShare = true;
view.onShareAppMessage = function (res) {
//分享配置
return {
title: '志亮·深士照明',
path: 'pages/index/index'
};
};
}
}
})
},
// 获取用户基本信息
queryIndex(query = {
auth: true
}) {
return new Promise((resolve, reject) => {
this.post({
url: this.api.index,
data: {},
loading: true,
}).then((result) => {
this.globalData.indexInfo = result;
this.globalData.userInfo = result.userInfo;
if (result.isNeedAuth == 1 && auth == true) {
//需要授权
this.router.push({
path: "authorize"
})
reject();
// resolve();
} else {
resolve(result)
}
}).catch((err) => {
reject();
});
});
}
})
......
{
"pages": [
"pages/contact-table/contact-table",
"pages/contact/contact",
"pages/user-center/user-center",
"pages/index/index",
"pages/authorize/authorize",
"pages/gift-shop/gift-shop",
......@@ -12,11 +15,8 @@
"pages/my-qrcode/my-qrcode",
"pages/my-order/my-order",
"pages/my-message/my-message",
"pages/contact/contact",
"pages/contact-table/contact-table",
"pages/vip-login/vip-login",
"pages/vip-verify/vip-verify",
"pages/user-center/user-center",
"pages/sign-in-record/sign-in-record",
"pages/rank/rank",
"pages/rank-gift/rank-gift",
......@@ -26,7 +26,7 @@
"window": {
"backgroundTextStyle": "light",
"navigationBarBackgroundColor": "#3680EB",
"navigationBarTitleText": "志亮照明",
"navigationBarTitleText": "深士照明",
"navigationBarTextStyle": "white"
},
"tabBar": {
......@@ -36,22 +36,26 @@
"backgroundColor": "#ffffff",
"list": [{
"pagePath": "pages/index/index",
"iconPath": "image/tabbar/scan_bar.png",
"selectedIconPath": "image/tabbar/scan_bar_selected.png",
"iconPath": "image/tabbar/scan-bar.png",
"selectedIconPath": "image/tabbar/scan-bar-selected.png",
"text": "扫码积分"
},
{
"pagePath": "pages/gift-shop/gift-shop",
"iconPath": "image/tabbar/gift_bar.png",
"selectedIconPath": "image/tabbar/gift_bar_selected.png",
"iconPath": "image/tabbar/gift-bar.png",
"selectedIconPath": "image/tabbar/gift-bar-selected.png",
"text": "礼物兑换"
},
{
"pagePath": "pages/user-center/user-center",
"iconPath": "image/tabbar/user_bar.png",
"selectedIconPath": "image/tabbar/user_bar_selected.png",
"iconPath": "image/tabbar/user-bar.png",
"selectedIconPath": "image/tabbar/user-bar-selected.png",
"text": "个人中心"
}
]
},
"usingComponents": {
"authorize-comp": "../../component/authorize-comp/authorize-comp",
"van-popup": "../../ui/vant-weapp/popup/index"
}
}
......
......@@ -100,3 +100,27 @@
background-color: transparent;
border: 0;
}
// 居中按钮样式
@mixin btc($width, $height) {
width: $width;
height: $height;
line-height: $height;
text-align: center;
}
// 通用按钮
@mixin cb($width:320px, $height:84px, $fontSize:32px) {
color: #FFFFFF;
position: relative;
width: $width;
height: $height;
line-height: $height;
text-align: center;
font-size: $fontSize;
border-radius: 8px;
background-color: #3680EB;
}
......
let app = getApp();
Component({
properties: {
// 这里定义了innerText属性,属性值可以在组件使用时指定
innerText: {
type: String,
value: 'default value',
}
},
data: {
// 这里是一些组件内部数据
someData: {}
},
methods: {
// 这里是一个自定义方法
customMethod() {
this.triggerEvent('evtcomp', {
name: "_evt_custom"
})
},
// 隐藏蒙层
hideMask() {
this.triggerEvent('evtcomp', {
name: "_evt_hide_mask"
});
},
authComplete() {
this.triggerEvent('evtcomp', {
name: "_evt_auth_complete"
});
},
bindGetUserInfo(e) {
wx.showLoading();
this.getUserInfo(e.detail);
},
getUserInfo(e) {
let _this = this;
app.globalData.userInfo = e.userInfo;
app.post({
url: app.api.register,
sid: false,
data: {
encryptedData: e.encryptedData,
iv: e.iv,
code: app.store.getItem("wxcode"),
tlMemberCode: app.globalData.tlMemberCode
}
}).then((res2) => {
wx.hideLoading();
if (res2 && res2.sessionId) {
app.store.setItem('sessionId', res2.sessionId);
}
_this.hideMask();
_this.authComplete();
}).catch((err) => {})
},
}
})
@import '../../assets/scss/mixins';
@import '../../assets/scss/utils';
.comp-item {
width: 650px;
min-height: 496px;
border-radius: 10px;
background-color: #ffffff;
.cspace {
height: 80px;
}
.cont {
text-align: center;
width: 520px;
margin: 0 auto;
.logo {
margin: 0 auto;
width: 200px;
height: 153px;
image {
width: 200px;
height: 153px;
}
}
.tit {
font-size: 40px;
color: #333333;
}
.tips {
margin-top: 28px;
font-size: 32px;
color: #333333;
padding-bottom: 244px;
}
}
.btn {
@include cb(300px, 80px);
position: absolute;
left: 0;
right: 0;
bottom: 80px;
margin: 0 auto;
}
}
<view class="comp-item">
<view class="cspace"></view>
<view class="cont">
<!-- <view class="logo">
<image mode="widthFix" src="../../image/logo.png" />
</view> -->
<view class="tit">深士照明</view>
<view class="tips">
<text >需要获取您的微信昵称等信息才可以获取积分和兑换奖品哦</text>
</view>
</view>
<button class="btn" open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo">确认授权</button>
</view>
let app = getApp();
Component({
properties: {
// 这里定义了innerText属性,属性值可以在组件使用时指定
......
......@@ -4,6 +4,10 @@ Component({
innerText: {
type: String,
value: 'default value',
},
productInfo: {
type: Object,
value: {},
}
},
data: {
......
......@@ -26,13 +26,24 @@
border: 1px solid #F0F0F0;
border-radius: 4px;
.swiper {}
.swiper {
width: 610px;
height: 322px;
.swiper-image {
width: 610px;
height: 322px;
}
}
}
.desc {
color: #333333;
font-size: 28px;
height: 404px;
line-height: 48px;
}
}
.close {
......
<view class="comp-item">
<view class="cont">
<view class="tit">LED大功率球泡灯</view>
<view class="tit">{{productInfo.productName}}</view>
<view class="img-wrap">
<view class="swiper"></view>
</view>
<view class="desc">产品特点:</view>
<view class="desc">
节能白光LED的能耗仅为白炽灯的1/10,节能灯的1/4,超长寿命50.000小时以上,是传统钨丝灯的50倍以上,固态封装,方便运输和安装;环保,没有汞的有害物质。采用PWM恒流技术,效率高,热量低,恒流精度高。宽电压范围,全球通用,85V-265VAC全电压范围恒流。保证寿命及亮度不受电压波动影响。
<swiper class="swiper" indicator-color="rgba(0,0,0,.3)" indicator-active-color="rgba(255,255,255,1)" indicator-dots="{{true}}" autoplay="{{true}}" interval="{{5000}}" duration="{{500}}">
<block wx:for="{{productInfo.productImages}}" wx:key="{{index}}">
<swiper-item>
<image class="swiper-image" src="{{item}}" mode="aspectFill" />
</swiper-item>
</block>
</swiper>
</view>
<scroll-view scroll-y="{{true}}" class="desc">
<text class="t1">产品特点:</text>
<text class="t2">
{{productInfo.productInfo}}
</text>
</scroll-view>
</view>
<view class="close">
<image bindtap="hideMask" class="btn" src="../../image/index/index_close.png" />
<image bindtap="hideMask" class="btn" src="../../image/index/index-close.png" />
</view>
</view>
......
module.exports = {
mockApi: 'http://mock.simonfungc.com',
Dev: {
baseApi: 'https://dev-api.xxx.com'
baseApi: 'https://ow.go.qudone.com/zlzmapi'
},
Test: {
baseApi: 'https://test-api.xxx.com'
......@@ -10,6 +10,6 @@ module.exports = {
baseApi: 'https://slave-api.xxx.com'
},
Prod: {
baseApi: 'https://api.xxx.com'
baseApi: 'https://api.k.wxpai.cn/bizproxy/zlzmapi'
}
}
......
module.exports = {
index: '/xxx/index', // Index 接口
register: '/xxx/register', // 解析用户信息
login: "/login", // post 通过wxcode换取sessionId
register: '/register', // post 注册(用户授权)
product: '/product', // post 首页商品概览
bannerList: '/banner/list', // post 轮播图列表
pointsOverview: '/points/overview', // post 查看积分概览
commodityList: '/commodity/list', // post 积分商城浏览 商品列表
commodityVeridcation: '/commodity/veridcation', // post 兑换礼物 红包和实物兑换礼物接口 , 实物会返回地址信息,红包校验通过会直接兑换
commodityExchange: '/commodity/exchange', // post 兑换礼物2 实物兑换,需要带上地址的唯一标识uuid
receiver: '/receiver', // post 地址 地址列表接口
receiverSave: '/receiver/save', // post 新建地址 地址信息新建 、保存
receiverDelete: '/receiver/delete', // post 地址删除
member: '/member', // post 个人首页 个人首页的详细信息
memberType: '/member/type', // post 用户类型 获取用户类型
memberPhone: '/member/phone', // post 获取手机验证码 获取验证码
memberIdCommit: '/member/id/commit', // post 信息验证提交
memberIdUpdate: '/member/id/update', // post 验证信息修改-----忽略
memberIdQuery: '/member/id/query', // post 审核信息查看接口
announcementList: '/announcement/list', // post 我的消息 我的消息列表
announcementUpdate: '/announcement/update', // post 我的消息标已读 用户注册接口
announcementDelete: '/announcement/delete', // post 我的消息删除 删除已读消息
announcementDeleteOne: 'announcement/delete/one', // post 我的消息删除---单个 删除单条消息 单个的英文是single
messageSave: '/message/save', // post 用户留言
contact: '/contact', // post 联系方式
order: '/order', // post 订单状态 订单列表
activity: '/activity', // post 推广积分排行
activityHistory: '/activity/history', // post 历史推广排行
activityAll: '/activity/all', // post 总排行--忽略
activityPrize: '/activity/prize', // post 排行奖励明细
activityPrizeGet: '/activity/prize/get', // post 领取奖励 活动奖励获取
scanIntegralQrcode: '/scan/integral/qrcode', // post 扫积分码功能 扫积分码
scanPersonQrcode: '/scan/person/qrcode', // post 扫个人二维码
signInfo: '/sign/info', // post 签到信息 用户注册接口
sign: '/sign', // post 签到动作 用户注册接口
sginRecord: '/sgin/record', // post 签到记录 用户注册接口
}
......
let config = require('./../config');
let Store = require('./../utils/stroage');
const reason = '服务异常,请稍后重试';
let Router = require('./../router/index');
const errMsg = '服务异常,请稍后重试';
// 检查并获取sessionid sid:是否需要验证sessionId
function checkSessionId(sid) {
return new Promise((resolve, reject) => {
if (!sid) {
resolve();
return;
}
let sessionId = Store.getItem('sessionId');
if (sessionId) {
resolve(sessionId);
} else {
// 身份失效
//登陆失效的回调
// Store.clear("sessionId");
// wx.reLaunch({
// // url: '/pages/authorize/authorize'
// url: '/pages/login/login',
// })
}
});
// let isWxLogin = false;
function wxLogin() {
return new Promise((resolve, reject) => {
wx.login({
success: function (res) {
// isWxLogin = true;
Store.setItem('wxcode', res.code);
resolve();
}
});
});
}
const fetch = function ({
loading = false,
toast = true,
sid = true,
mode,
isMock,
url,
data,
method
}) {
// 自定义参数
// const clientInfo = {
// user_id: 1
// }
// 日志埋点不需要出现loading
if (loading && mode != 'log') wx.showLoading();
// if (loading && mode != 'log') Util.showLoading();
// 新建promise对象
let promise = new Promise((resolve, reject) => {
/**
* isMock设置单个接口Mock开启
* mode:目前针对不同业务的接口进行处理,log标识本地埋点上传
*/
let baseUrl = config.NET_CONFIG.baseApi;
if (isMock && mode != 'log') {
baseUrl = config.MOCKAPI; //环境配置
}
// 检查并获取sessionid
function checkSessionId(sid) {
return new Promise((resolve, reject) => {
if (!sid) {
resolve();
return;
}
let sessionId = Store.getItem('sessionId');
if (sessionId) {
resolve();
} else {
// 没有sessionId则获取并埋值
login().then((result) => {
resolve();
}).catch((err) => {
reject();
});
}
});
}
checkSessionId().then((result) => {
if (sid) {
url += "?sessionId=" + Store.getItem("sessionId")
}
// console.log("url:", url);
wx.request({
url: baseUrl + url, //请求地址
data: data, //自定义参数
method: method || 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
// header: {}, // 设置请求的 header的默认参数,根据项目需求添加
// header: {
// 'clientInfo': JSON.stringify(clientInfo),
// 'Server-Token':'xxx'
// },
success: function (result) {
// 日志上传不需要处理结果
if (mode == 'log') return;
let res = result.data;
// 登陆失效拦截,根据项目需要添加自己的配置
if (res.code == 404) {
// wx.showToast({
// title: '当前登陆失效,请重新登陆',
// icon: 'none',
// mask: true,
// success: () => {
// return;
// }
// })
//登陆失效的回调
Store.clear("sessionId");
wx.reLaunch({
url: '/pages/authorize/authorize'
})
}
// 内部统一的成功code拦截码
if (res.code === 200) {
if (loading) {
wx.hideLoading();
}
// resolve(res);
// 直接返回content
resolve(res.content);
} else {
// 有些特殊状况不需要toast 需要弹窗
if (toast) {
wx.showToast({
title: res.errMsg || errMsg,
icon: 'none'
})
} else {
wx.hideLoading();
}
// 返回错误信息
reject(res);
}
},
fail: function (e = {
CODE: -1,
msg: errMsg,
errMsg
}) {
let msg = e.errMsg;
if (e.errMsg == 'request:fail timeout') {
msg = '服务请求超时,请稍后重试'
}
wx.showToast({
title: msg,
icon: 'none'
});
reject(e)
},
complete: function () {
// complete
}
})
})
// session丢失
function login() {
return new Promise((resolve, reject) => {
wxLogin().then((result) => {
let baseUrl = config.NET_CONFIG.baseApi;
wx.request({
url: baseUrl + '/login',
sid: false,
data: {
code: Store.getItem('wxcode')
},
method: 'POST',
success: function (res2) {
let {
code,
content
} = res2.data;
if (code == 200 && content.sessionId) {
Store.setItem('sessionId', content.sessionId);
resolve();
} else {
wx.hideLoading();
let pages = getCurrentPages();
let view = pages[pages.length - 1];
if (view) {
try {
wx.login({
success: function (res) {
Store.setItem('wxcode', res.code);
view.showAuth();
}
});
} catch (error) {}
}
reject();
}
}
})
})
});
}
});
return promise;
const fetch = function ({
loading = true,
toast = true,
sid = true,
auth = true,
mode,
isMock,
url,
data,
method
}) {
if (loading && mode != 'log') wx.showLoading();
// 新建promise对象
let promise = new Promise((resolve, reject) => {
/**
* isMock设置单个接口Mock开启
* mode:目前针对不同业务的接口进行处理,log标识本地埋点上传
*/
let baseUrl = config.NET_CONFIG.baseApi;
if (isMock && mode != 'log') {
baseUrl = config.MOCKAPI; //环境配置
}
checkSessionId(sid).then((result) => {
wx.request({
url: baseUrl + url, //请求地址
data: data, //自定义参数
method: method || 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
header: {
sessionId: Store.getItem("sessionId")
},
success: function (result) {
// 日志上传不需要处理结果
if (mode == 'log') return;
let res = result.data;
// 登陆失效拦截,根据项目需要添加自己的配置
if (res.code == 404) {
//登陆失效的回调
Store.clear("sessionId");
// wx.reLaunch({
// url: '/pages/index/index'
// })
// 404后拉取登陆后再做一次
login().then((resultLogin) => {
wx.request({
url: baseUrl + url, //请求地址
data: data, //自定义参数
method: method || 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
header: {
sessionId: Store.getItem("sessionId")
},
success: function (result) {
// 日志上传不需要处理结果
if (mode == 'log') return;
let res = result.data;
if (res.code === 200) {
if (loading) {
wx.hideLoading();
}
resolve(res.content);
} else {
// 有些特殊状况不需要toast 需要弹窗
if (toast) {
wx.showToast({
title: res.errMsg || errMsg,
icon: 'none'
})
} else {
wx.hideLoading();
}
// 返回错误信息
reject(res);
}
}
});
})
return;
}
// 内部统一的成功code拦截码
if (res.code === 200) {
if (loading) {
wx.hideLoading();
}
resolve(res.content);
} else {
// 有些特殊状况不需要toast 需要弹窗
if (toast) {
wx.showToast({
title: res.errMsg || errMsg,
icon: 'none'
})
} else {
wx.hideLoading();
}
// 返回错误信息
reject(res);
}
},
fail: function (e = {
CODE: -1,
msg: errMsg,
errMsg
}) {
let msg = e.errMsg;
if (e.errMsg == 'request:fail timeout') {
msg = '服务请求超时,请稍后重试'
}
wx.showToast({
title: msg,
icon: 'none'
});
reject(e)
},
complete: function () {
// complete
}
})
})
});
return promise;
}
module.exports = {
fetch
fetch
}
......
let app = getApp();
Page({
data: {
authorizeVisible: false,
value: "",
checked: true,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {},
onChange(event) {
this.setData({
......
......@@ -32,3 +32,6 @@
</view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}" >
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {},
// 编辑收货地址
onAddressEditHandler() {
......
......@@ -54,3 +54,6 @@
</view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}" >
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {
barHeight: app.globalData.barHeight,
navbarData: {
showCapsule: 0, //是否显示左上角图标 1表示显示 0表示不显示
title: '微信授权' //导航栏 中间的标题
},
loginData: null,
authorized: false,
canIUse: wx.canIUse('button.open-type.getUserInfo'),
},
onShareAppMessage() {},
onLoad(options) {},
onReady() {
// app.store.clear("sessionId");
let _this = this;
wx.login({
success: function (res) {
_this.data.loginData = res;
}
});
},
bindGetUserInfo(e) {
wx.showLoading();
this.getUserInfo(e.detail);
},
getUserInfo(e) {
let _this = this;
app.globalData.userInfo = e.userInfo;
// console.log("loginData:",_this.data.loginData);
app.post({
url: app.api.register,
sid: false,
data: {
encryptedData: e.encryptedData,
iv: e.iv,
code: _this.data.loginData.code,
}
}).then((res2) => {
app.store.setItem('sessionId', res2.sessionId);
_this.setData({
authorized: true
})
_this.toIndex();
}).catch((err) => {
console.log("@authorize || err:", err);
})
},
toIndex() {
console.log("@authorize || toIndex ");
setTimeout(() => {
app.router.push({
path: "index",
query: {},
openType: "redirect"
})
wx.hideLoading();
}, 2000);
}
})
{
"usingComponents": {
"navbar": "../../component/navbar/index"
},
"navigationStyle": "custom"
}
@import '../../assets/scss/mixins';
.page {
position: relative;
overflow: hidden;
.bgc {
// background-color: transparent;
// background-color: black;
background-color: #fafafc;
}
.main {
position: relative;
.top-space {
height: 60px;
}
.login {
position: relative;
width: 650px;
margin: 0 auto;
text-align: center;
&-logo {
width: 140px;
height: 140px;
}
&-name {
margin-top: 32px;
font-size: 32px;
color: #333333;
}
&-line {
margin-top: 70px;
width: 650px;
height: 2px;
background-color: #eaeaec;
}
&-title {
margin-top: 40px;
font-size: 32px;
text-align: left;
color: #333333;
}
&-tips {
margin-top: 28px;
font-size: 26px;
text-align: left;
color: #666666;
}
&-btn {
margin-top: 102px;
width: 650px;
height: 90px;
line-height: 90px;
border-radius: 8px;
background-color: #00c200;
font-size: 32px;
color: #ffffff;
}
}
}
}
<navbar navbar-data='{{navbarData}}'></navbar>
<view style='height: {{barHeight}}px'></view>
<view class="page-authorize page">
<view class="app__bgc bgc"></view>
<view class="app__bg bg"></view>
<!-- <view class="app__top-shadow"></view> -->
<view class="app__content main">
<view class="top-space"></view>
<view class="login">
<image class="login-logo" src="../../image/logo.png" mode="aspectFit" />
<view class="login-name">志亮·深士照明</view>
<view class="login-line"></view>
<view class="login-title">完整体验小程序功能,需要您的微信授权</view>
<view class="login-tips">· 获取您的公开信息(昵称、头像等)</view>
<button type="default" class="login-btn" wx:if="{{!authorized}}" open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo">
确认授权
</button>
</view>
</view>
</view>
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {}
})
......
{
"navigationBarTitleText": "more"
"navigationBarTitleText": "联系我们"
}
......
@import '../../assets/scss/mixins';
@import '../../assets/scss/utils';
$contentWidth:690px;
.page {
.bgc {}
......@@ -8,11 +10,73 @@
.main {
.top-space {
height: 0px;
height: 40px;
}
.content {
position: relative;
.form {
color: #333333;
&-item {
font-size: 28px;
display: flex;
justify-content: space-between;
margin: 30px auto;
.label {
color: #666666;
width: 120px;
margin-right: 20px;
}
.val {
flex: 1;
color: #333333;
}
.net {
color: #3680EB;
}
.exts {
@extend .fcc;
.icon {
width: 36px;
height: 35px;
margin-right: 10px;
}
}
}
.upload{
margin-top: 30px;
.tips{
font-size: 28px;
color: #666666;
}
.upload{}
}
.textarea {
background: #F8F8F8;
@extend .bb;
padding: 20px;
font-size: 28px;
}
}
}
}
}
.border {
width: $contentWidth;
@extend .shadow;
background-color: #ffffff;
@extend .bb;
padding: 40px 34px;
margin: 0 auto 20px;
}
......
......@@ -3,6 +3,28 @@
<view class="app__bg bg"></view>
<view class="app__content main">
<view class="top-space"></view>
<view class="content"></view>
<view class="content">
<view class="border table">
<view class="form">
<view class="form-item">
<view class="label">用户姓名</view>
<view class="val">深圳市龙岗区龙信工业区A栋</view>
</view>
<view class="form-item">
<view class="label">联系方式</view>
<view class="val">深圳市龙岗区龙信工业区A栋</view>
</view>
<view class="form-item"></view>
<textarea class="textarea" placeholder="不超过500字"></textarea>
<view class="upload">
<view class="tips">上传照片</view>
<!-- <view class="up"></view> -->
</view>
</view>
</view>
</view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}">
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {}
})
......
{
"navigationBarTitleText": "more"
"navigationBarTitleText": "联系我们"
}
......
@import '../../assets/scss/mixins';
@import '../../assets/scss/utils';
$contentWidth:690px;
.page {
border-bottom: $pageBottom;
.bgc {}
.bg {}
.main {
.top-space {
height: 0px;
height: 20px;
}
.content {
position: relative;
// banner
.banner {
width: 726px;
margin: 0 auto;
image {
width: 726px;
}
}
// 表单
.table {
.form {
&-item {
font-size: 28px;
display: flex;
justify-content: space-between;
margin: 30px auto;
.label {
color: #666666;
width: 120px;
margin-right: 20px;
}
.val {
flex: 1;
color: #333333;
}
.net {
color: #3680EB;
}
.exts {
@extend .fcc;
.icon {
width: 36px;
height: 35px;
margin-right: 10px;
}
}
}
}
}
// 关注
.focus {
text-align: center;
.qrcode {
margin-top: 16px;
width: 280px;
}
.tips {
margin-top: 10px;
font-size: 28px;
color: #333333;
}
.btn {
// @extend .bc
@include cb();
margin: 40px auto 24px;
}
}
}
}
}
.border {
width: $contentWidth;
@extend .shadow;
background-color: #ffffff;
@extend .bb;
padding: 24px 30px;
margin: 0 auto 20px;
}
......
......@@ -3,6 +3,51 @@
<view class="app__bg bg"></view>
<view class="app__content main">
<view class="top-space"></view>
<view class="content"></view>
<view class="content">
<!-- banner -->
<view class="banner">
<image class="image" mode="widthFix" src="../../image/contact/contact-c1.png" />
</view>
<!-- 表单 -->
<view class="border table">
<view class="form">
<view class="form-item">
<view class="label">生产地址</view>
<view class="val">深圳市龙岗区龙信工业区A栋</view>
</view>
<view class="form-item">
<view class="label">电话</view>
<view class="val">0755-28839576</view>
<view class="exts">
<image class="icon" mode="aspectFit" src="../../image/contact/contact-c2.png" />
</view>
</view>
<view class="form-item">
<view class="label">手机</view>
<view class="val">0755-28839576</view>
<view class="exts">
<image class="icon" mode="aspectFit" src="../../image/contact/contact-c2.png" />
</view>
</view>
<view class="form-item">
<view class="label">网址</view>
<view class="val net">www.zgzlzm.com</view>
</view>
<view class="form-item">
<view class="label">E-mail</view>
<view class="val net">www.zgzlzm.com</view>
</view>
</view>
</view>
<!-- 关注 -->
<view class="border focus">
<image class="qrcode" mode="widthFix" src="../../image/qrcode/qrcode-focus.png" />
<view class="tips">更多讯息,欢迎关注我们的公众号</view>
<view class="btn">一键关注</view>
</view>
</view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}">
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {},
/**
* 确认兑换 / 提交订单
......
......@@ -58,3 +58,6 @@
</view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}" >
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {
authorizeVisible: false,
productList: ["", "", ""]
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {},
/**
* 显示礼物详情
......
......@@ -6,17 +6,17 @@
<div class="top-wrap">
<view class="search">
<input class="ipt" placeholder="输入关键字搜索" />
<image class="icon" mode="aspectFit" src="../../image/icon/icon_search.png" />
<image class="icon" mode="aspectFit" src="../../image/icon/icon-search.png" />
</view>
<view class="filter">
积分排序
<view wx:if="{{1>0}}" class="icon-wrap">
<image class="icon up" src="../../image/icon/icon_filter_up_on.png" mode="widthFix" />
<image class="icon down" src="../../image/icon/icon_filter_down.png" mode="widthFix" />
<image class="icon up" src="../../image/icon/icon-filter-up-on.png" mode="widthFix" />
<image class="icon down" src="../../image/icon/icon-filter-down.png" mode="widthFix" />
</view>
<view wx:else class="icon-wrap">
<image class="icon up" src="../../image/icon/icon_filter_up.png" mode="widthFix" />
<image class="icon down" src="../../image/icon/icon_filter_down_on.png" mode="widthFix" />
<image class="icon up" src="../../image/icon/icon-filter-up.png" mode="widthFix" />
<image class="icon down" src="../../image/icon/icon-filter-down-on.png" mode="widthFix" />
</view>
</view>
</div>
......@@ -39,3 +39,6 @@
</view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}" >
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
import {
getBindtapData
} from '../../utils/util';
let app = getApp();
Page({
data: {
authorizeVisible: false,
productDetailVisible: false,
bannerList: [], // 轮播图列表
total: 0,
page: 1,
size: 10,
productList: [], // 产品列表
curProductDetail: {} // 选中的产品详情
},
onLoad(options) {},
// 子组件事件
evtcomp(evt) {
let {
name,
data
} = evt.detail;
switch (name) {
case "_evt_hide_product_detail_mask":
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {
this.queryProduct();
this.queryBanner();
},
// 到达底部
onReachBottom() {
if (this.data.productList.length < this.data.total) {
this.setData({
page: this.data.page + 1
});
this.queryProduct();
}
},
// 重置页面列表 点击搜索条件时需要
resetPage() {
this.setData({
page: 1,
productList: []
})
},
/**
* 请求产品
*/
queryProduct() {
return new Promise((resolve, reject) => {
app.post({
sid: false,
url: app.api.product,
data: {
page: this.data.page,
size: this.data.size,
},
}).then((result) => {
let productList = result.list;
productList = this.data.productList.concat(productList);
this.setData({
productDetailVisible: false
productList: productList,
total: result.total
})
break;
default:
break;
}
resolve();
})
});
},
/**
* 请求bannder
*/
queryBanner() {
return new Promise((resolve, reject) => {
app.post({
sid: false,
url: app.api.bannerList,
data: {},
}).then((result) => {
this.setData({
bannerList: result
})
resolve();
})
});
},
/**
* 点击详情
*/
onProductItemHandler() {
onProductItemHandler(evt) {
let curProductDetail = getBindtapData(evt);
this.setData({
curProductDetail: curProductDetail,
productDetailVisible: true
})
},
......@@ -42,5 +102,23 @@ Page({
let result = res.result;
}
})
}
},
// 子组件事件
evtcomp(evt) {
let {
name,
data
} = evt.detail;
switch (name) {
case "_evt_hide_product_detail_mask":
this.setData({
productDetailVisible: false
})
break;
default:
break;
}
},
})
......
......@@ -14,7 +14,7 @@ $contentWidth:670px;
.main {
.top {
position: fixed;
position: relative;
width: 750px;
z-index: 11;
......@@ -24,13 +24,18 @@ $contentWidth:670px;
height: 300px;
}
.space1{
height: 222px;
}
.search {
position: relative;
width: $contentWidth;
height: 100px;
background: #FFFFFF;
@extend .shadow;
margin: 222px auto 0;
// margin: 222px auto 0;
margin: 0 auto 0;
display: flex;
justify-content: space-between;
align-items: center;
......@@ -66,7 +71,8 @@ $contentWidth:670px;
}
.top-space {
height: 362px;
// height: 362px;
height: 80px;
}
.content {
......@@ -78,8 +84,17 @@ $contentWidth:670px;
.banner {
width: $contentWidth;
height: 250px;
background-color: wheat;
margin: 0 auto;
.swiper {
width: $contentWidth;
height: 250px;
.swiper-image {
width: $contentWidth;
height: 250px;
}
}
}
// 产品
......@@ -111,19 +126,21 @@ $contentWidth:670px;
padding-bottom: 12px;
.image {
background: wheat;
width: 322px;
height: 322px;
}
.desc {
@extend .bb;
width: 322px;
padding: 4px 20px;
font-size: 24px;
// line-height: 32px;
color: #333333;
@include ellipsis(3);
}
}
}
}
......
......@@ -4,58 +4,40 @@
<view class="app__content main">
<!-- Title及搜索框 -->
<view class="top">
<image class="top-bg" mode="widthFix" src="../../image/index/index_c1.png" />
<image class="top-bg" mode="widthFix" src="../../image/index/index-c1.png" />
<view class="space1"></view>
<view class="search">
<view class="search-ipt-wrap">
<input class="ipt" placeholder="请输入串码" />
</view>
<view class="search-scan">
<image class="icon" mode="aspectFit" src="../../image/icon/icon_search.png" />
<image class="icon" mode="aspectFit" src="../../image/icon/icon-search.png" />
</view>
<view class="search-line"></view>
<view bindtap="onScanHandler" class="search-scan">
<image class="icon" mode="aspectFit" src="../../image/icon/icon_scan.png" />
<image class="icon" mode="aspectFit" src="../../image/icon/icon-scan.png" />
</view>
</view>
</view>
<view class="top-space"></view>
<view class="content">
<!-- 轮播 banner -->
<!-- <swiper indicator-dots="{{true}}" autoplay="{{true}}" interval="{{5000}}" duration="{{500}}">
<block wx:for="{{imgUrls}}">
<swiper-item>
<image class="swiper-image" src="{{item}}" />
</swiper-item>
</block>
</swiper> -->
<view class="banner"></view>
<view class="banner">
<swiper class="swiper" indicator-color="rgba(0,0,0,.3)" indicator-active-color="rgba(255,255,255,1)" indicator-dots="{{true}}" autoplay="{{true}}" interval="{{5000}}" duration="{{500}}">
<block wx:for="{{bannerList}}" wx:key="{{index}}">
<swiper-item>
<image class="swiper-image" src="{{item}}" mode="aspectFill" />
</swiper-item>
</block>
</swiper>
</view>
<view class="product">
<view class="product-title">产品推荐{{codeStr}}</view>
<view class="product-list">
<!-- for循环 -->
<view class="item" bindtap="onProductItemHandler">
<image class="image" mode="aspectFill" />
<view class="desc">
LED筒灯-3W 5W 7W 9W 12W 15W 18WLED筒灯-3W 5W 7W 9W 12W 15W 18WLED筒灯-3W 5W 7W 9W 12W 15W 18WLED筒灯-3W 5W 7W 9W 12W 15W 18W
</view>
</view>
<view class="item">
<image class="image" mode="aspectFill" />
<view class="desc">
LED筒灯-3W 5W 7W 9W 12W 15W 18WLED筒灯-3W 5W 7W 9W 12W 15W 18WLED筒灯-3W 5W 7W 9W 12W 15W 18WLED筒灯-3W 5W 7W 9W 12W 15W 18W
</view>
</view>
<view class="item">
<image class="image" mode="aspectFill" />
<view class="desc">
LED筒灯-3W 5W 7W 9W 12W 15W 18WLED筒灯-3W 5W 7W 9W 12W 15W 18WLED筒灯-3W 5W 7W 9W 12W 15W 18WLED筒灯-3W 5W 7W 9W 12W 15W 18W
</view>
</view>
<view class="item">
<image class="image" mode="aspectFill" />
<view class="desc">
LED筒灯-3W 5W 7W 9W 12W 15W 18WLED筒灯-3W 5W 7W 9W 12W 15W 18WLED筒灯-3W 5W 7W 9W 12W 15W 18WLED筒灯-3W 5W 7W 9W 12W 15W 18W
</view>
<view bindtap="onProductItemHandler" data-data="{{item}}" wx:for="{{productList}}" wx:key="{{index}}" class="item">
<image class="image" mode="aspectFill" src="{{item.productImages[0]}}" />
<view class="desc">{{item.productInfo}}</view>
</view>
</view>
</view>
......@@ -63,5 +45,8 @@
</view>
</view>
<van-popup show="{{ productDetailVisible }}" position="bottom">
<product-detail-comp bind:evtcomp="evtcomp"></product-detail-comp>
<product-detail-comp product-info="{{curProductDetail}}" bind:evtcomp="evtcomp"></product-detail-comp>
</van-popup>
<van-popup show="{{ authorizeVisible }}">
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {}
})
......
......@@ -6,3 +6,6 @@
<view class="content"></view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}" >
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {}
})
......
......@@ -7,3 +7,6 @@
<view class="content"></view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}" >
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {}
})
......
......@@ -6,3 +6,6 @@
<view class="content"></view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}" >
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {}
})
......
......@@ -6,3 +6,6 @@
<view class="content"></view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}" >
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {}
})
......
......@@ -6,3 +6,6 @@
<view class="content"></view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}" >
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {}
})
......
......@@ -6,3 +6,6 @@
<view class="content"></view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}" >
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {}
})
......
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {}
})
......
......@@ -6,3 +6,6 @@
<view class="content">scan-result</view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}" >
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {}
})
......
......@@ -7,3 +7,6 @@
<view class="content"></view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}" >
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {},
onLoad(options) {}
data: {
authorizeVisible: false,
userInfo: {},
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onShow() {
},
onLoad(options) {
this.initData();
},
initData() {
this.queryMember();
},
/**
* 获取会员信息
*/
queryMember() {
return new Promise((resolve, reject) => {
app.post({
url: app.api.member,
data: {}
}).then((result) => {
this.setData({
userInfo: result
})
resolve();
})
});
},
// 子组件事件
evtcomp(evt) {
let {
name,
data
} = evt.detail;
switch (name) {
case "_evt_auth_complete":
this.initData();
break;
case "_evt_hide_mask":
break;
default:
break;
}
},
})
......
@import '../../assets/scss/mixins';
@import '../../assets/scss/utils';
$contentWidth: 690px;
.page {
padding-bottom: $pageBottom;
.bgc {}
.bg {}
.main {
.top {
position: relative;
width: 750px;
color: #ffffff;
&-bg {
position: absolute;
width: 750px;
height: 300px;
}
.user {
width: 750px;
margin: 0 auto 36px;
position: relative;
padding-top: 42px;
display: flex;
justify-content: space-between;
z-index: 21;
&-info {
display: flex;
padding-left: 30px;
@extend .bb;
.avatar {
width: 120px;
height: 120px;
border-radius: 60px;
}
.wrap1 {
margin-top: 12px;
margin-left: 20px;
.name {
font-size: 36px;
}
.vip {
font-size: 24px;
margin-top: 8px;
background: #FF7B21;
border-radius: 4px;
padding: 2px 12px;
border-radius: 8px;
}
.vip-check{
background: #6DD400;
}
}
}
&-data {
display: flex;
align-items: center;
.wrap {
// width: 120px;
padding: 0 40px;
text-align: center;
.t1 {
font-size: 40px;
}
.t2 {
font-size: 24px;
opacity: .7;
}
}
.line {
height: 80px;
width: 2px;
opacity: 0.5;
background: #FFFFFF;
}
}
}
}
.top-space {
height: 0px;
}
.content {
position: relative;
color: #ffffff;
// 场景
.sence {
width: $contentWidth;
margin: 0 auto 0;
.border {
width: $contentWidth;
@extend .shadow;
background-color: #ffffff;
@extend .bb;
padding: 24px 26px;
margin: 0 auto 20px;
}
// 签到区
.sign {
// 头部
.tit {
display: flex;
justify-content: space-between;
.t1 {
font-size: 28px;
color: #333333;
font-weight: bold;
}
.t2 {
display: flex;
align-items: center;
font-size: 24px;
color: #3680EB;
.icon {
width: 34px;
height: 36px;
margin-right: 10px;
}
}
}
// 7天签到
.check {
position: relative;
margin: 32px auto 0;
display: flex;
justify-content: space-between;
&-item {
width: 68px;
height: 100px;
border-radius: 8px;
text-align: center;
background: #F0F0F0;
padding: 8px 4px;
@extend .bb;
.no {
@extend .fcc;
color: #333333;
font-size: 28px;
height: 40px;
}
.icon {
image {
margin-top: 4px;
width: 40px;
height: 40px;
}
}
}
&-item-act {
color: #FFFFFF;
background: #3680EB;
.no {
color: #ffffff;
}
}
}
// 签到按钮
&-btn {
@include btc(280px, 68px);
margin: 42px auto 4px;
border-radius: 34px;
background: #3680EB;
font-size: 28px;
color: #FFFFFF;
}
&-btn-disable{
background: #ECECEC;
}
}
// 订单区域
.order {
display: flex;
justify-content: space-between;
font-size: 24px;
color: #131415;
text-align: center;
&-item {
width: 110px;
.icon-wrap {
@extend .fcc;
height: 100px;
height: 100px;
.icon {
height: 64px;
height: 64px;
}
}
.txt {}
}
}
// 功能区
.func {
color: #333333;
font-size: 28px;
text-align: center;
.my-qrcode {
width: 620px;
// height: 140px;
margin: auto 0;
background: #F8F8F8;
padding: 22px 0;
.qrcode {
width: 56px;
height: 56px;
}
.t1 {
margin-top: 4px;
}
}
&-wrap {
margin: 40px auto 4px;
display: flex;
justify-content: space-between;
&-item {
width: 132px;
.icon-wrap {
@extend .fcc;
height: 100px;
height: 100px;
.icon {
height: 64px;
height: 64px;
}
}
.txt {}
}
}
}
}
}
}
}
......
......@@ -2,7 +2,144 @@
<view class="app__bgc bgc"></view>
<view class="app__bg bg"></view>
<view class="app__content main">
<view class="top">
<image class="top-bg" mode="widthFix" src="../../image/user-center/user-center-top-bg.png" />
<!-- 用户信息 -->
<view class="user">
<!-- 左边栏 -->
<view class="user-info">
<image class="avatar" mode="aspectFill" src="{{userInfo.avatar}}" />
<view class="wrap1">
<view class="name">{{userInfo.realName}}</view>
<view wx:if="{{userInfo.auditStatus == 'authorization'}}" class="vip vip-check">积分会员</view>
<view wx:else class="vip">未验证 ></view>
</view>
</view>
<!-- 右边栏 -->
<view class="user-data">
<view class="wrap">
<view class="t1">1345</view>
<view class="t2">我的积分</view>
</view>
<view class="line"></view>
<view class="wrap">
<view class="t1">20</view>
<view class="t2">推广数据</view>
</view>
</view>
</view>
</view>
<view class="top-space"></view>
<view class="content"></view>
<view class="content">
<!-- 场景 -->
<view class="sence">
<!-- 签到区 -->
<view class="border sign ">
<view class="tit">
<view class="t1">连续签到7天赢现金红包</view>
<view class="t2">
<image class="icon" mode="aspectFit" src="../../image/icon/icon-sign-record.png" />
签到记录
</view>
</view>
<!-- 7天签到 -->
<view class="check">
<view class="check-item check-item-act">
<view class="no">1</view>
<view class="icon">
<image mode="aspectFit" src="../../image/icon/icon-check.png" />
<!-- <image mode="aspectFit" src="../../image/icon/icon-integral.png" /> -->
<!-- <image mode="aspectFit" src="../../image/icon/icon-red-package.png" /> -->
</view>
</view>
<view class="check-item ">
<view class="no">2</view>
<view class="icon">
<image mode="aspectFit" src="../../image/icon/icon-integral.png" />
</view>
</view>
<view class="check-item ">
<view class="no">3</view>
<view class="icon">
<image mode="aspectFit" src="../../image/icon/icon-red-package.png" />
</view>
</view>
</view>
<!-- 签到按钮 -->
<!-- <view class="sign-btn ">签到 (第4天)</view> -->
<view class="sign-btn sign-btn-disable">已签到</view>
</view>
<!-- 订单区 -->
<view class="border order ">
<view class="order-item">
<view class="icon-wrap">
<image class="icon" mode="aspectFit" src="../../image/icon/icon-all-order.png" />
</view>
<view class="txt">全部订单</view>
</view>
<view class="order-item">
<view class="icon-wrap">
<image class="icon" mode="aspectFit" src="../../image/icon/icon-wait-review.png" />
</view>
<view class="txt">待审核</view>
</view>
<view class="order-item">
<view class="icon-wrap">
<image class="icon" mode="aspectFit" src="../../image/icon/icon-review-pass.png" />
</view>
<view class="txt">已通过</view>
</view>
<view class="order-item">
<view class="icon-wrap">
<image class="icon" mode="aspectFit" src="../../image/icon/icon-shipped.png" />
</view>
<view class="txt">已发货</view>
</view>
<view class="order-item">
<view class="icon-wrap">
<image class="icon" mode="aspectFit" src="../../image/icon/icon-up-pass.png" />
</view>
<view class="txt">未通过</view>
</view>
</view>
<!-- 功能区 -->
<view class="border func">
<view class="my-qrcode">
<image class="qrcode" mode="widthFix" src="../../image/icon/icon-qrcode.png" />
<view class="t1">我的二维码</view>
</view>
<!-- 功能区 -->
<view class="func-wrap">
<view class="func-wrap-item">
<view class="icon-wrap">
<image class="icon" mode="aspectFit" src="../../image/icon/icon-integral-rank.png" />
</view>
<view class="txt">积分排行</view>
</view>
<view class="func-wrap-item">
<view class="icon-wrap">
<image class="icon" mode="aspectFit" src="../../image/icon/icon-my-address.png" />
</view>
<view class="txt">我的地址</view>
</view>
<view class="func-wrap-item">
<view class="icon-wrap">
<image class="icon" mode="aspectFit" src="../../image/icon/icon-my-message.png" />
</view>
<view class="txt">我的消息</view>
</view>
<view class="func-wrap-item">
<view class="icon-wrap">
<image class="icon" mode="aspectFit" src="../../image/icon//icon-concat-us.png" />
</view>
<view class="txt">联系我们</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}">
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {}
})
......
......@@ -6,3 +6,6 @@
<view class="content"></view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}" >
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......
let app = getApp();
Page({
data: {},
data: {
authorizeVisible: false,
},
onShareAppMessage() {},
showAuth() {
this.setData({
authorizeVisible: true
})
},
onLoad(options) {}
})
......
......@@ -6,3 +6,6 @@
<view class="content"></view>
</view>
</view>
<van-popup show="{{ authorizeVisible }}" >
<authorize-comp bind:evtcomp="evtcomp"></authorize-comp>
</van-popup>
......