Commit 286c0ae7 authored by Junling Bu's avatar Junling Bu
Browse files

chore[renard-wx]: 基于微信开发者工具的格式化代码

parent 20b97ec8
...@@ -3,29 +3,29 @@ var api = require('./config/api.js'); ...@@ -3,29 +3,29 @@ var api = require('./config/api.js');
var user = require('./utils/user.js'); var user = require('./utils/user.js');
App({ App({
onLaunch: function() { onLaunch: function() {
const updateManager = wx.getUpdateManager(); const updateManager = wx.getUpdateManager();
wx.getUpdateManager().onUpdateReady(function() { wx.getUpdateManager().onUpdateReady(function() {
wx.showModal({ wx.showModal({
title: '更新提示', title: '更新提示',
content: '新版本已经准备好,是否重启应用?', content: '新版本已经准备好,是否重启应用?',
success: function(res) { success: function(res) {
if (res.confirm) { if (res.confirm) {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启 // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
updateManager.applyUpdate() updateManager.applyUpdate()
} }
} }
}) })
}) })
}, },
onShow: function(options) { onShow: function(options) {
user.checkLogin().then(res => { user.checkLogin().then(res => {
this.globalData.hasLogin = true; this.globalData.hasLogin = true;
}).catch(() => { }).catch(() => {
this.globalData.hasLogin = false; this.globalData.hasLogin = false;
}); });
}, },
globalData: { globalData: {
hasLogin: false hasLogin: false
} }
}) })
\ No newline at end of file
{ {
"pages": [ "pages": [
"pages/index/index", "pages/index/index",
"pages/catalog/catalog", "pages/catalog/catalog",
"pages/newGoods/newGoods", "pages/newGoods/newGoods",
"pages/hotGoods/hotGoods", "pages/hotGoods/hotGoods",
"pages/ucenter/index/index", "pages/ucenter/index/index",
"pages/ucenter/address/address", "pages/ucenter/address/address",
"pages/ucenter/addressAdd/addressAdd", "pages/ucenter/addressAdd/addressAdd",
"pages/ucenter/order/order", "pages/ucenter/order/order",
"pages/ucenter/orderDetail/orderDetail", "pages/ucenter/orderDetail/orderDetail",
"pages/ucenter/coupon/coupon", "pages/ucenter/coupon/coupon",
"pages/ucenter/collect/collect", "pages/ucenter/collect/collect",
"pages/auth/login/login", "pages/auth/login/login",
"pages/payResult/payResult", "pages/payResult/payResult",
"pages/comment/comment", "pages/comment/comment",
"pages/commentPost/commentPost", "pages/commentPost/commentPost",
"pages/topic/topic", "pages/topic/topic",
"pages/topicDetail/topicDetail", "pages/topicDetail/topicDetail",
"pages/brand/brand", "pages/brand/brand",
"pages/brandDetail/brandDetail", "pages/brandDetail/brandDetail",
"pages/search/search", "pages/search/search",
"pages/category/category", "pages/category/category",
"pages/cart/cart", "pages/cart/cart",
"pages/shopping/checkout/checkout", "pages/shopping/checkout/checkout",
"pages/goods/goods", "pages/goods/goods",
"pages/groupon/myGroupon/myGroupon", "pages/groupon/myGroupon/myGroupon",
"pages/groupon/grouponDetail/grouponDetail", "pages/groupon/grouponDetail/grouponDetail",
"pages/groupon/grouponList/grouponList" "pages/groupon/grouponList/grouponList"
], ],
"window": { "window": {
"navigationBarTitleText": "Renard", "navigationBarTitleText": "Renard",
"enablePullDownRefresh": true, "enablePullDownRefresh": true,
"backgroundTextStyle": "light", "backgroundTextStyle": "light",
"navigationBarBackgroundColor": "#fff", "navigationBarBackgroundColor": "#fff",
"navigationBarTextStyle": "black" "navigationBarTextStyle": "black"
}, },
"tabBar": { "tabBar": {
"color": "#6e6d6b", "color": "#6e6d6b",
"selectedColor": "#e64340", "selectedColor": "#e64340",
"borderStyle": "white", "borderStyle": "white",
"backgroundColor": "#fff", "backgroundColor": "#fff",
"box-shadow": "0 0 6px 0", "box-shadow": "0 0 6px 0",
"list": [ "list": [
{ {
"pagePath": "pages/index/index", "pagePath": "pages/index/index",
"iconPath": "images/tabbar/like-f.png", "iconPath": "images/tabbar/like-f.png",
"selectedIconPath": "images/tabbar/like-o.png" "selectedIconPath": "images/tabbar/like-o.png"
}, },
{ {
"pagePath": "pages/catalog/catalog", "pagePath": "pages/catalog/catalog",
"iconPath": "images/tabbar/menu-f.png", "iconPath": "images/tabbar/menu-f.png",
"selectedIconPath": "images/tabbar/menu-o.png" "selectedIconPath": "images/tabbar/menu-o.png"
}, },
{ {
"pagePath": "pages/cart/cart", "pagePath": "pages/cart/cart",
"iconPath": "images/tabbar/cart-f.png", "iconPath": "images/tabbar/cart-f.png",
"selectedIconPath": "images/tabbar/cart-o.png" "selectedIconPath": "images/tabbar/cart-o.png"
}, },
{ {
"pagePath": "pages/ucenter/index/index", "pagePath": "pages/ucenter/index/index",
"iconPath": "images/tabbar/user-f.png", "iconPath": "images/tabbar/user-f.png",
"selectedIconPath": "images/tabbar/user-o.png" "selectedIconPath": "images/tabbar/user-o.png"
} }
] ]
}, },
"networkTimeout": { "networkTimeout": {
"request": 10000, "request": 10000,
"connectSocket": 10000, "connectSocket": 10000,
"uploadFile": 10000, "uploadFile": 10000,
"downloadFile": 10000 "downloadFile": 10000
}, },
"debug": true "debug": true
} }
\ No newline at end of file
/**app.wxss**/ /**app.wxss**/
.container { .container {
box-sizing: border-box; box-sizing: border-box;
font-family: PingFangSC-Light,helvetica,'Heiti SC'; font-family: PingFangSC-Light, helvetica, 'Heiti SC';
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
view,image,text,navigator{ view, image, text, navigator {
box-sizing: border-box; box-sizing: border-box;
padding:0; padding: 0;
margin:0; margin: 0;
} }
view,text{ view, text {
font-family: PingFangSC-Light,helvetica,'Heiti SC'; font-family: PingFangSC-Light, helvetica, 'Heiti SC';
font-size: 29rpx; font-size: 29rpx;
color: #a78845; color: #a78845;
} }
.wxParse-img { .wxParse-img {
display: block !important; display: block !important;
} }
\ No newline at end of file
// 以下是业务服务器API地址 // 以下是业务服务器API地址
// 本机开发时使用 // 本机开发时使用
var WxApiRoot = 'http://localhost:8080/wx/'; var WxApiRoot = 'http://localhost:8080/wx/';
// 局域网测试使用 // 局域网测试使用
// var WxApiRoot = 'http://192.168.0.101:8080/wx/'; // var WxApiRoot = 'http://192.168.0.101:8080/wx/';
// 云平台上线时使用 // 云平台上线时使用
...@@ -8,82 +8,82 @@ ...@@ -8,82 +8,82 @@
// var WxApiRoot = 'https://www.menethil.com.cn/wx/'; // var WxApiRoot = 'https://www.menethil.com.cn/wx/';
module.exports = { module.exports = {
IndexUrl: WxApiRoot + 'home/index', //首页数据接口 IndexUrl: WxApiRoot + 'home/index', //首页数据接口
CatalogList: WxApiRoot + 'catalog/index', //分类目录全部分类数据接口 CatalogList: WxApiRoot + 'catalog/index', //分类目录全部分类数据接口
CatalogCurrent: WxApiRoot + 'catalog/current', //分类目录当前分类数据接口 CatalogCurrent: WxApiRoot + 'catalog/current', //分类目录当前分类数据接口
CatalogAll: WxApiRoot + 'catalog/all', //分类目录当前分类数据接口 CatalogAll: WxApiRoot + 'catalog/all', //分类目录当前分类数据接口
AuthLoginByWeixin: WxApiRoot + 'auth/login_by_weixin', //微信登录 AuthLoginByWeixin: WxApiRoot + 'auth/login_by_weixin', //微信登录
AuthLoginByAccount: WxApiRoot + 'auth/login', //账号登录 AuthLoginByAccount: WxApiRoot + 'auth/login', //账号登录
AuthRegister: WxApiRoot + 'auth/register', //账号注册 AuthRegister: WxApiRoot + 'auth/register', //账号注册
AuthReset: WxApiRoot + 'auth/reset', //账号密码重置 AuthReset: WxApiRoot + 'auth/reset', //账号密码重置
AuthRegisterCaptcha: WxApiRoot + 'auth/regCaptcha', //验证码 AuthRegisterCaptcha: WxApiRoot + 'auth/regCaptcha', //验证码
GoodsCount: WxApiRoot + 'goods/count', //统计商品总数 GoodsCount: WxApiRoot + 'goods/count', //统计商品总数
GoodsList: WxApiRoot + 'goods/list', //获得商品列表 GoodsList: WxApiRoot + 'goods/list', //获得商品列表
GoodsCategory: WxApiRoot + 'goods/category', //获得分类数据 GoodsCategory: WxApiRoot + 'goods/category', //获得分类数据
GoodsDetail: WxApiRoot + 'goods/detail', //获得商品的详情 GoodsDetail: WxApiRoot + 'goods/detail', //获得商品的详情
GoodsNew: WxApiRoot + 'goods/new', //新品 GoodsNew: WxApiRoot + 'goods/new', //新品
GoodsHot: WxApiRoot + 'goods/hot', //热门 GoodsHot: WxApiRoot + 'goods/hot', //热门
GoodsRelated: WxApiRoot + 'goods/related', //商品详情页的关联商品(大家都在看) GoodsRelated: WxApiRoot + 'goods/related', //商品详情页的关联商品(大家都在看)
BrandList: WxApiRoot + 'brand/list', //品牌列表 BrandList: WxApiRoot + 'brand/list', //品牌列表
BrandDetail: WxApiRoot + 'brand/detail', //品牌详情 BrandDetail: WxApiRoot + 'brand/detail', //品牌详情
CartList: WxApiRoot + 'cart/index', //获取购物车的数据 CartList: WxApiRoot + 'cart/index', //获取购物车的数据
CartAdd: WxApiRoot + 'cart/add', // 添加商品到购物车 CartAdd: WxApiRoot + 'cart/add', // 添加商品到购物车
CartFastAdd: WxApiRoot + 'cart/fastadd', // 立即购买商品 CartFastAdd: WxApiRoot + 'cart/fastadd', // 立即购买商品
CartUpdate: WxApiRoot + 'cart/update', // 更新购物车的商品 CartUpdate: WxApiRoot + 'cart/update', // 更新购物车的商品
CartDelete: WxApiRoot + 'cart/delete', // 删除购物车的商品 CartDelete: WxApiRoot + 'cart/delete', // 删除购物车的商品
CartChecked: WxApiRoot + 'cart/checked', // 选择或取消选择商品 CartChecked: WxApiRoot + 'cart/checked', // 选择或取消选择商品
CartGoodsCount: WxApiRoot + 'cart/goodscount', // 获取购物车商品件数 CartGoodsCount: WxApiRoot + 'cart/goodscount', // 获取购物车商品件数
CartCheckout: WxApiRoot + 'cart/checkout', // 下单前信息确认 CartCheckout: WxApiRoot + 'cart/checkout', // 下单前信息确认
CollectList: WxApiRoot + 'collect/list', //收藏列表 CollectList: WxApiRoot + 'collect/list', //收藏列表
CollectAddOrDelete: WxApiRoot + 'collect/addordelete', //添加或取消收藏 CollectAddOrDelete: WxApiRoot + 'collect/addordelete', //添加或取消收藏
CommentList: WxApiRoot + 'comment/list', //评论列表 CommentList: WxApiRoot + 'comment/list', //评论列表
CommentCount: WxApiRoot + 'comment/count', //评论总数 CommentCount: WxApiRoot + 'comment/count', //评论总数
CommentPost: WxApiRoot + 'comment/post', //发表评论 CommentPost: WxApiRoot + 'comment/post', //发表评论
TopicList: WxApiRoot + 'topic/list', //专题列表 TopicList: WxApiRoot + 'topic/list', //专题列表
TopicDetail: WxApiRoot + 'topic/detail', //专题详情 TopicDetail: WxApiRoot + 'topic/detail', //专题详情
TopicRelated: WxApiRoot + 'topic/related', //相关专题 TopicRelated: WxApiRoot + 'topic/related', //相关专题
SearchIndex: WxApiRoot + 'search/index', //搜索关键字 SearchIndex: WxApiRoot + 'search/index', //搜索关键字
SearchResult: WxApiRoot + 'search/result', //搜索结果 SearchResult: WxApiRoot + 'search/result', //搜索结果
SearchHelper: WxApiRoot + 'search/helper', //搜索帮助 SearchHelper: WxApiRoot + 'search/helper', //搜索帮助
SearchClearHistory: WxApiRoot + 'search/clearhistory', //搜索历史清楚 SearchClearHistory: WxApiRoot + 'search/clearhistory', //搜索历史清楚
AddressList: WxApiRoot + 'address/list', //收货地址列表 AddressList: WxApiRoot + 'address/list', //收货地址列表
AddressDetail: WxApiRoot + 'address/detail', //收货地址详情 AddressDetail: WxApiRoot + 'address/detail', //收货地址详情
AddressSave: WxApiRoot + 'address/save', //保存收货地址 AddressSave: WxApiRoot + 'address/save', //保存收货地址
AddressDelete: WxApiRoot + 'address/delete', //保存收货地址 AddressDelete: WxApiRoot + 'address/delete', //保存收货地址
RegionList: WxApiRoot + 'region/list', //获取区域列表 RegionList: WxApiRoot + 'region/list', //获取区域列表
OrderSubmit: WxApiRoot + 'order/submit', // 提交订单 OrderSubmit: WxApiRoot + 'order/submit', // 提交订单
OrderPrepay: WxApiRoot + 'order/prepay', // 订单的预支付会话 OrderPrepay: WxApiRoot + 'order/prepay', // 订单的预支付会话
OrderList: WxApiRoot + 'order/list', //订单列表 OrderList: WxApiRoot + 'order/list', //订单列表
OrderDetail: WxApiRoot + 'order/detail', //订单详情 OrderDetail: WxApiRoot + 'order/detail', //订单详情
OrderCancel: WxApiRoot + 'order/cancel', //取消订单 OrderCancel: WxApiRoot + 'order/cancel', //取消订单
OrderRefund: WxApiRoot + 'order/refund', //退款取消订单 OrderRefund: WxApiRoot + 'order/refund', //退款取消订单
OrderDelete: WxApiRoot + 'order/delete', //删除订单 OrderDelete: WxApiRoot + 'order/delete', //删除订单
OrderConfirm: WxApiRoot + 'order/confirm', //确认收货 OrderConfirm: WxApiRoot + 'order/confirm', //确认收货
OrderGoods: WxApiRoot + 'order/goods', // 代评价商品信息 OrderGoods: WxApiRoot + 'order/goods', // 代评价商品信息
OrderComment: WxApiRoot + 'order/comment', // 评价订单商品信息 OrderComment: WxApiRoot + 'order/comment', // 评价订单商品信息
FootprintList: WxApiRoot + 'footprint/list', //足迹列表 FootprintList: WxApiRoot + 'footprint/list', //足迹列表
FootprintDelete: WxApiRoot + 'footprint/delete', //删除足迹 FootprintDelete: WxApiRoot + 'footprint/delete', //删除足迹
UserFormIdCreate: WxApiRoot + 'formid/create', //用户FromId,用于发送模版消息 UserFormIdCreate: WxApiRoot + 'formid/create', //用户FromId,用于发送模版消息
GroupOnList: WxApiRoot + 'groupon/list', //团购列表 GroupOnList: WxApiRoot + 'groupon/list', //团购列表
GroupOn: WxApiRoot + 'groupon/query', //团购API-查询 GroupOn: WxApiRoot + 'groupon/query', //团购API-查询
GroupOnMy: WxApiRoot + 'groupon/my', //团购API-我的团购 GroupOnMy: WxApiRoot + 'groupon/my', //团购API-我的团购
GroupOnDetail: WxApiRoot + 'groupon/detail', //团购API-详情 GroupOnDetail: WxApiRoot + 'groupon/detail', //团购API-详情
GroupOnJoin: WxApiRoot + 'groupon/join', //团购API-详情 GroupOnJoin: WxApiRoot + 'groupon/join', //团购API-详情
StorageUpload: WxApiRoot + 'storage/upload' //图片上传 StorageUpload: WxApiRoot + 'storage/upload' //图片上传
}; };
\ No newline at end of file
...@@ -4,29 +4,28 @@ var user = require('../../../utils/user.js'); ...@@ -4,29 +4,28 @@ var user = require('../../../utils/user.js');
var app = getApp(); var app = getApp();
Page({ Page({
data: { data: {},
}, onLoad: function(options) {
onLoad: function (options) {
// 页面初始化 options为页面跳转所带来的参数 // 页面初始化 options为页面跳转所带来的参数
// 页面渲染完成 // 页面渲染完成
}, },
onReady: function () { onReady: function() {
}, },
onShow: function () { onShow: function() {
// 页面显示 // 页面显示
}, },
onHide: function () { onHide: function() {
// 页面隐藏 // 页面隐藏
}, },
onUnload: function () { onUnload: function() {
// 页面关闭 // 页面关闭
}, },
wxLogin: function (e) { wxLogin: function(e) {
if (e.detail.userInfo == undefined){ if (e.detail.userInfo == undefined) {
app.globalData.hasLogin = false; app.globalData.hasLogin = false;
util.showErrorToast('微信登录失败'); util.showErrorToast('微信登录失败');
return; return;
......
<view class="container"> <view class="container">
<view class="form-box"> <view class="form-box">
<button type="primary" open-type="getUserInfo" class="login-btn" bindgetuserinfo="wxLogin">微信直接登录</button> <button type="primary" open-type="getUserInfo" class="login-btn" bindgetuserinfo="wxLogin">微信直接登录</button>
</view> </view>
</view> </view>
\ No newline at end of file
.form-box{ .form-box {
width: 100%; width: 100%;
height: auto; height: auto;
overflow: hidden; overflow: hidden;
padding: 0 40rpx; padding: 0 40rpx;
margin-top: 96rpx; margin-top: 96rpx;
background: #fff; background: #fff;
} }
.form-item{ .form-item {
position: relative; position: relative;
background: #fff; background: #fff;
height: 96rpx; height: 96rpx;
border-bottom: 1px solid #a78845; border-bottom: 1px solid #a78845;
} }
.form-item .username, .form-item .password, .form-item .code{ .form-item .username, .form-item .password, .form-item .code {
position: absolute; position: absolute;
top: 26rpx; top: 26rpx;
left: 0; left: 0;
display: block; display: block;
width: 100%; width: 100%;
height: 44rpx; height: 44rpx;
background: #fff; background: #fff;
color: #a78845; color: #a78845;
font-size: 30rpx; font-size: 30rpx;
} }
.form-item-code{ .form-item-code {
margin-top:32rpx; margin-top: 32rpx;
height: auto; height: auto;
overflow: hidden; overflow: hidden;
width: 100%; width: 100%;
} }
.form-item-code .form-item{ .form-item-code .form-item {
float: left; float: left;
width: 350rpx; width: 350rpx;
} }
.form-item-code .code-img{ .form-item-code .code-img {
float: right; float: right;
margin-top: 4rpx; margin-top: 4rpx;
height: 88rpx; height: 88rpx;
width: 236rpx; width: 236rpx;
} }
.form-item .clear{ .form-item .clear {
position: absolute; position: absolute;
top: 26rpx; top: 26rpx;
right: 18rpx; right: 18rpx;
z-index: 2; z-index: 2;
display: block; display: block;
background: #fff; background: #fff;
height: 44rpx; height: 44rpx;
width: 44rpx; width: 44rpx;
} }
.login-btn{ .login-btn {
margin: 60rpx 0 40rpx 0; margin: 60rpx 0 40rpx 0;
height: 96rpx; height: 96rpx;
line-height: 96rpx; line-height: 96rpx;
color: #a78845; color: #a78845;
font-size: 30rpx; font-size: 30rpx;
width: 100%; width: 100%;
background: #b4282d; background: #b4282d;
border-radius: 6rpx; border-radius: 6rpx;
} }
.form-item-text{ .form-item-text {
height: 35rpx; height: 35rpx;
width: 100%; width: 100%;
color: #a78845; color: #a78845;
} }
.form-item-text .register{ .form-item-text .register {
display: block; display: block;
height: 34rpx; height: 34rpx;
float: left; float: left;
font-size: 28rpx; font-size: 28rpx;
color: #a78845; color: #a78845;
} }
.form-item-text .reset{ .form-item-text .reset {
display: block; display: block;
height: 34rpx; height: 34rpx;
float: right; float: right;
font-size: 28rpx; font-size: 28rpx;
color: #a78845; color: #a78845;
} }
\ No newline at end of file
...@@ -2,58 +2,58 @@ var util = require('../../utils/util.js'); ...@@ -2,58 +2,58 @@ var util = require('../../utils/util.js');
var api = require('../../config/api.js'); var api = require('../../config/api.js');
var app = getApp(); var app = getApp();
Page({ Page({
data: { data: {
brandList: [], brandList: [],
page: 1, page: 1,
size: 10, size: 10,
totalPages: 1 totalPages: 1
}, },
onLoad: function(options) { onLoad: function(options) {
// 页面初始化 options为页面跳转所带来的参数 // 页面初始化 options为页面跳转所带来的参数
this.getBrandList(); this.getBrandList();
}, },
getBrandList: function() { getBrandList: function() {
wx.showLoading({ wx.showLoading({
title: '加载中...', title: '加载中...',
});
let that = this;
util.request(api.BrandList, {
page: that.data.page,
size: that.data.size
}).then(function(res) {
if (res.errno === 0) {
that.setData({
brandList: that.data.brandList.concat(res.data.brandList),
totalPages: res.data.totalPages
}); });
} let that = this;
wx.hideLoading(); util.request(api.BrandList, {
}); page: that.data.page,
}, size: that.data.size
onReachBottom() { }).then(function(res) {
if (this.data.totalPages > this.data.page) { if (res.errno === 0) {
this.setData({ that.setData({
page: this.data.page + 1 brandList: that.data.brandList.concat(res.data.brandList),
}); totalPages: res.data.totalPages
} else { });
return false; }
} wx.hideLoading();
});
},
onReachBottom() {
if (this.data.totalPages > this.data.page) {
this.setData({
page: this.data.page + 1
});
} else {
return false;
}
this.getBrandList(); this.getBrandList();
}, },
onReady: function() { onReady: function() {
}, },
onShow: function() { onShow: function() {
// 页面显示 // 页面显示
}, },
onHide: function() { onHide: function() {
// 页面隐藏 // 页面隐藏
}, },
onUnload: function() { onUnload: function() {
// 页面关闭 // 页面关闭
} }
}) })
\ No newline at end of file
<view class="container"> <view class="container">
<view class="brand-list"> <view class="brand-list">
<navigator url="../brandDetail/brandDetail?id={{item.id}}" class="item" wx:for="{{brandList}}" wx:key="id"> <navigator url="../brandDetail/brandDetail?id={{item.id}}" class="item" wx:for="{{brandList}}" wx:key="id">
<view class="img-bg"> <view class="img-bg">
<image src="{{item.picUrl}}" background-size="cover"></image> <image src="{{item.picUrl}}" background-size="cover"></image>
</view> </view>
<view class="txt-box"> <view class="txt-box">
<view class="line"> <view class="line">
<text class="name">{{item.name}}</text> <text class="name">{{item.name}}</text>
</view> </view>
</view> </view>
</navigator> </navigator>
</view> </view>
</view> </view>
\ No newline at end of file
.brand-list .item{ .brand-list .item {
display: block; display: block;
width: 750rpx; width: 750rpx;
height: 416rpx; height: 416rpx;
position: relative; position: relative;
margin-bottom: 4rpx; margin-bottom: 4rpx;
} }
.brand-list .item .img-bg{ .brand-list .item .img-bg {
position: absolute; position: absolute;
left:0; left: 0;
top:0; top: 0;
z-index: 0; z-index: 0;
width: 750rpx; width: 750rpx;
height: 417rpx; height: 417rpx;
overflow: hidden; overflow: hidden;
} }
.brand-list .item .img-bg image{ .brand-list .item .img-bg image {
width: 750rpx; width: 750rpx;
height: 416rpx; height: 416rpx;
} }
.brand-list .item .txt-box{ .brand-list .item .txt-box {
position: absolute; position: absolute;
left:0; left: 0;
top:0; top: 0;
display: table; display: table;
z-index: 0; z-index: 0;
width: 750rpx; width: 750rpx;
height: 417rpx; height: 417rpx;
} }
.brand-list .item .line{ .brand-list .item .line {
display: table-cell; display: table-cell;
vertical-align: middle; vertical-align: middle;
text-align: center; text-align: center;
height: 63rpx; height: 63rpx;
line-height: 63rpx; line-height: 63rpx;
} }
.brand-list .item .line text{ .brand-list .item .line text {
font-size: 35rpx; font-size: 35rpx;
font-weight: 700; font-weight: 700;
text-shadow: 1rpx 1rpx rgba(0,0,0,.32); text-shadow: 1rpx 1rpx rgba(0, 0, 0, 0.32);
color: #fff; color: #fff;
} }
.brand-list .item .line .s{ .brand-list .item .line .s {
padding: 0 10rpx; padding: 0 10rpx;
font-size: 40rpx; font-size: 40rpx;
} }
\ No newline at end of file
var util = require('../../utils/util.js'); var util = require('../../utils/util.js');
var api = require('../../config/api.js'); var api = require('../../config/api.js');
var app = getApp(); var app = getApp();
Page({ Page({
data: { data: {
id: 0, id: 0,
brand: {}, brand: {},
goodsList: [], goodsList: [],
page: 1, page: 1,
size: 100 size: 100
}, },
onLoad: function(options) { onLoad: function(options) {
// 页面初始化 options为页面跳转所带来的参数 // 页面初始化 options为页面跳转所带来的参数
var that = this; var that = this;
that.setData({
id: parseInt(options.id)
});
this.getBrand();
},
getBrand: function() {
let that = this;
util.request(api.BrandDetail, {
id: that.data.id
}).then(function(res) {
if (res.errno === 0) {
that.setData({ that.setData({
brand: res.data.brand id: parseInt(options.id)
}); });
this.getBrand();
},
getBrand: function() {
let that = this;
util.request(api.BrandDetail, {
id: that.data.id
}).then(function(res) {
if (res.errno === 0) {
that.setData({
brand: res.data.brand
});
that.getGoodsList(); that.getGoodsList();
} }
}); });
}, },
getGoodsList() { getGoodsList() {
var that = this; var that = this;
util.request(api.GoodsList, { util.request(api.GoodsList, {
brandId: that.data.id, brandId: that.data.id,
page: that.data.page, page: that.data.page,
size: that.data.size size: that.data.size
}) })
.then(function(res) { .then(function(res) {
if (res.errno === 0) { if (res.errno === 0) {
that.setData({ that.setData({
goodsList: res.data.goodsList goodsList: res.data.goodsList
}); });
} }
}); });
}, },
onReady: function() { onReady: function() {
// 页面渲染完成 // 页面渲染完成
}, },
onShow: function() { onShow: function() {
// 页面显示 // 页面显示
}, },
onHide: function() { onHide: function() {
// 页面隐藏 // 页面隐藏
}, },
onUnload: function() { onUnload: function() {
// 页面关闭 // 页面关闭
} }
}) })
\ No newline at end of file
{ {
"navigationBarTitleText": "品牌商详情", "navigationBarTitleText": "品牌商详情",
"usingComponents": { "usingComponents": {
"goodList": "/components/goodList/goodList" "goodList": "/components/goodList/goodList"
} }
} }
\ No newline at end of file
<view class="container"> <view class="container">
<view class="brand-info"> <view class="brand-info">
<view class="name"> <view class="name">
<image class="img" src="{{brand.picUrl}}" background-size="cover"></image> <image class="img" src="{{brand.picUrl}}" background-size="cover"></image>
<view class="info-box"> <view class="info-box">
<view class="info"> <view class="info">
<text class="txt">{{brand.name}}</text> <text class="txt">{{brand.name}}</text>
<text class="line"></text> <text class="line"></text>
</view>
</view>
</view>
<view class="desc">
{{brand.desc}}
</view> </view>
</view>
</view>
<view class="desc">
{{brand.desc}}
</view> </view>
</view>
<view class="cate-item"> <view class="cate-item">
<goodList calss="goodList" goods="{{goodsList}}"></goodList> <goodList calss="goodList" goods="{{goodsList}}"></goodList>
</view> </view>
</view> </view>
\ No newline at end of file
page { page {
background: #f4f4f4; background: #f4f4f4;
} }
.brand-info .name { .brand-info .name {
width: 100%; width: 100%;
height: 290rpx; height: 290rpx;
position: relative; position: relative;
} }
.brand-info .img { .brand-info .img {
position: absolute; position: absolute;
top: 0; top: 0;
left: 0; left: 0;
width: 100%; width: 100%;
height: 290rpx; height: 290rpx;
} }
.brand-info .info-box { .brand-info .info-box {
position: absolute; position: absolute;
top: 0; top: 0;
left: 0; left: 0;
width: 100%; width: 100%;
height: 290rpx; height: 290rpx;
text-align: center; text-align: center;
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
.brand-info .info { .brand-info .info {
display: block; display: block;
} }
.brand-info .txt { .brand-info .txt {
display: block; display: block;
height: 37.5rpx; height: 37.5rpx;
font-size: 37.5rpx; font-size: 37.5rpx;
color: #fff; color: #fff;
} }
.brand-info .line { .brand-info .line {
margin: 0 auto; margin: 0 auto;
margin-top: 16rpx; margin-top: 16rpx;
display: block; display: block;
height: 2rpx; height: 2rpx;
width: 145rpx; width: 145rpx;
background: #fff; background: #fff;
} }
.brand-info .desc { .brand-info .desc {
background: #fff; background: #fff;
width: 100%; width: 100%;
height: auto; height: auto;
overflow: hidden; overflow: hidden;
padding: 41.5rpx 31.25rpx; padding: 41.5rpx 31.25rpx;
font-size: 30rpx; font-size: 30rpx;
color: #666; color: #666;
line-height: 41.5rpx; line-height: 41.5rpx;
text-align: center; text-align: center;
} }
\ No newline at end of file
...@@ -5,301 +5,301 @@ var user = require('../../utils/user.js'); ...@@ -5,301 +5,301 @@ var user = require('../../utils/user.js');
var app = getApp(); var app = getApp();
Page({ Page({
data: { data: {
cartGoods: [], cartGoods: [],
cartTotal: { cartTotal: {
"goodsCount": 0, "goodsCount": 0,
"goodsAmount": 0.00, "goodsAmount": 0.00,
"checkedGoodsCount": 0, "checkedGoodsCount": 0,
"checkedGoodsAmount": 0.00 "checkedGoodsAmount": 0.00
},
isEditCart: false,
checkedAllStatus: true,
editCartList: [],
hasLogin: false
}, },
isEditCart: false, onLoad: function(options) {
checkedAllStatus: true, // 页面初始化 options为页面跳转所带来的参数
editCartList: [], },
hasLogin: false onReady: function() {
}, // 页面渲染完成
onLoad: function(options) { },
// 页面初始化 options为页面跳转所带来的参数 onShow: function() {
}, // 页面显示
onReady: function() { if (app.globalData.hasLogin) {
// 页面渲染完成 this.getCartList();
}, }
onShow: function() {
// 页面显示
if (app.globalData.hasLogin) {
this.getCartList();
}
this.setData({
hasLogin: app.globalData.hasLogin
});
},
onHide: function() {
// 页面隐藏
},
onUnload: function() {
// 页面关闭
},
goLogin() {
wx.navigateTo({
url: "/pages/auth/login/login"
});
},
onPullDownRefresh() {
wx.showNavigationBarLoading() //在标题栏中显示加载
this.getCartList();
wx.hideNavigationBarLoading() //完成停止加载
wx.stopPullDownRefresh() //停止下拉刷新
},
getCartList: function() { this.setData({
let that = this; hasLogin: app.globalData.hasLogin
util.request(api.CartList).then(function(res) {
if (res.errno === 0) {
that.setData({
cartGoods: res.data.cartList,
cartTotal: res.data.cartTotal
}); });
that.setData({ },
checkedAllStatus: that.isCheckedAll() onHide: function() {
// 页面隐藏
},
onUnload: function() {
// 页面关闭
},
goLogin() {
wx.navigateTo({
url: "/pages/auth/login/login"
}); });
} },
});
},
isCheckedAll: function() {
//判断购物车商品已全选
return this.data.cartGoods.every(function(element, index, array) {
if (element.checked == true) {
return true;
} else {
return false;
}
});
},
doCheckedAll: function() {
let checkedAll = this.isCheckedAll()
this.setData({
checkedAllStatus: this.isCheckedAll()
});
},
checkedItem: function(event) {
let itemIndex = event.target.dataset.itemIndex;
let that = this;
let productIds = []; onPullDownRefresh() {
productIds.push(that.data.cartGoods[itemIndex].productId); wx.showNavigationBarLoading() //在标题栏中显示加载
if (!this.data.isEditCart) { this.getCartList();
util.request(api.CartChecked, { wx.hideNavigationBarLoading() //完成停止加载
productIds: productIds, wx.stopPullDownRefresh() //停止下拉刷新
isChecked: that.data.cartGoods[itemIndex].checked ? 0 : 1 },
}, 'POST').then(function(res) {
if (res.errno === 0) {
that.setData({
cartGoods: res.data.cartList,
cartTotal: res.data.cartTotal
});
}
that.setData({ getCartList: function() {
checkedAllStatus: that.isCheckedAll() let that = this;
util.request(api.CartList).then(function(res) {
if (res.errno === 0) {
that.setData({
cartGoods: res.data.cartList,
cartTotal: res.data.cartTotal
});
that.setData({
checkedAllStatus: that.isCheckedAll()
});
}
}); });
}); },
} else { isCheckedAll: function() {
//编辑状态 //判断购物车商品已全选
let tmpCartData = this.data.cartGoods.map(function(element, index, array) { return this.data.cartGoods.every(function(element, index, array) {
if (index == itemIndex) { if (element.checked == true) {
element.checked = !element.checked; return true;
} } else {
return false;
}
});
},
doCheckedAll: function() {
let checkedAll = this.isCheckedAll()
this.setData({
checkedAllStatus: this.isCheckedAll()
});
},
checkedItem: function(event) {
let itemIndex = event.target.dataset.itemIndex;
let that = this;
return element; let productIds = [];
}); productIds.push(that.data.cartGoods[itemIndex].productId);
if (!this.data.isEditCart) {
util.request(api.CartChecked, {
productIds: productIds,
isChecked: that.data.cartGoods[itemIndex].checked ? 0 : 1
}, 'POST').then(function(res) {
if (res.errno === 0) {
that.setData({
cartGoods: res.data.cartList,
cartTotal: res.data.cartTotal
});
}
that.setData({ that.setData({
cartGoods: tmpCartData, checkedAllStatus: that.isCheckedAll()
checkedAllStatus: that.isCheckedAll(), });
'cartTotal.checkedGoodsCount': that.getCheckedGoodsCount() });
}); } else {
} //编辑状态
}, let tmpCartData = this.data.cartGoods.map(function(element, index, array) {
getCheckedGoodsCount: function() { if (index == itemIndex) {
let checkedGoodsCount = 0; element.checked = !element.checked;
this.data.cartGoods.forEach(function(v) { }
if (v.checked === true) {
checkedGoodsCount += v.number;
}
});
console.log(checkedGoodsCount);
return checkedGoodsCount;
},
checkedAll: function() {
let that = this;
if (!this.data.isEditCart) { return element;
var productIds = this.data.cartGoods.map(function(v) { });
return v.productId;
});
util.request(api.CartChecked, {
productIds: productIds,
isChecked: that.isCheckedAll() ? 0 : 1
}, 'POST').then(function(res) {
if (res.errno === 0) {
console.log(res.data);
that.setData({
cartGoods: res.data.cartList,
cartTotal: res.data.cartTotal
});
}
that.setData({ that.setData({
checkedAllStatus: that.isCheckedAll() cartGoods: tmpCartData,
checkedAllStatus: that.isCheckedAll(),
'cartTotal.checkedGoodsCount': that.getCheckedGoodsCount()
});
}
},
getCheckedGoodsCount: function() {
let checkedGoodsCount = 0;
this.data.cartGoods.forEach(function(v) {
if (v.checked === true) {
checkedGoodsCount += v.number;
}
}); });
}); console.log(checkedGoodsCount);
} else { return checkedGoodsCount;
//编辑状态 },
let checkedAllStatus = that.isCheckedAll(); checkedAll: function() {
let tmpCartData = this.data.cartGoods.map(function(v) { let that = this;
v.checked = !checkedAllStatus;
return v;
});
that.setData({ if (!this.data.isEditCart) {
cartGoods: tmpCartData, var productIds = this.data.cartGoods.map(function(v) {
checkedAllStatus: that.isCheckedAll(), return v.productId;
'cartTotal.checkedGoodsCount': that.getCheckedGoodsCount() });
}); util.request(api.CartChecked, {
} productIds: productIds,
isChecked: that.isCheckedAll() ? 0 : 1
}, 'POST').then(function(res) {
if (res.errno === 0) {
console.log(res.data);
that.setData({
cartGoods: res.data.cartList,
cartTotal: res.data.cartTotal
});
}
}, that.setData({
editCart: function() { checkedAllStatus: that.isCheckedAll()
var that = this; });
if (this.data.isEditCart) { });
this.getCartList(); } else {
this.setData({ //编辑状态
isEditCart: !this.data.isEditCart let checkedAllStatus = that.isCheckedAll();
}); let tmpCartData = this.data.cartGoods.map(function(v) {
} else { v.checked = !checkedAllStatus;
//编辑状态 return v;
let tmpCartList = this.data.cartGoods.map(function(v) { });
v.checked = false;
return v;
});
this.setData({
editCartList: this.data.cartGoods,
cartGoods: tmpCartList,
isEditCart: !this.data.isEditCart,
checkedAllStatus: that.isCheckedAll(),
'cartTotal.checkedGoodsCount': that.getCheckedGoodsCount()
});
}
}, that.setData({
updateCart: function(productId, goodsId, number, id) { cartGoods: tmpCartData,
let that = this; checkedAllStatus: that.isCheckedAll(),
'cartTotal.checkedGoodsCount': that.getCheckedGoodsCount()
});
}
util.request(api.CartUpdate, { },
productId: productId, editCart: function() {
goodsId: goodsId, var that = this;
number: number, if (this.data.isEditCart) {
id: id this.getCartList();
}, 'POST').then(function(res) { this.setData({
that.setData({ isEditCart: !this.data.isEditCart
checkedAllStatus: that.isCheckedAll() });
}); } else {
}); //编辑状态
let tmpCartList = this.data.cartGoods.map(function(v) {
v.checked = false;
return v;
});
this.setData({
editCartList: this.data.cartGoods,
cartGoods: tmpCartList,
isEditCart: !this.data.isEditCart,
checkedAllStatus: that.isCheckedAll(),
'cartTotal.checkedGoodsCount': that.getCheckedGoodsCount()
});
}
}, },
cutNumber: function(event) { updateCart: function(productId, goodsId, number, id) {
let that = this;
let itemIndex = event.target.dataset.itemIndex; util.request(api.CartUpdate, {
let cartItem = this.data.cartGoods[itemIndex]; productId: productId,
let number = (cartItem.number - 1 > 1) ? cartItem.number - 1 : 1; goodsId: goodsId,
cartItem.number = number; number: number,
this.setData({ id: id
cartGoods: this.data.cartGoods }, 'POST').then(function(res) {
}); that.setData({
this.updateCart(cartItem.productId, cartItem.goodsId, number, cartItem.id); checkedAllStatus: that.isCheckedAll()
}, });
addNumber: function(event) { });
let itemIndex = event.target.dataset.itemIndex;
let cartItem = this.data.cartGoods[itemIndex];
let number = cartItem.number + 1;
cartItem.number = number;
this.setData({
cartGoods: this.data.cartGoods
});
this.updateCart(cartItem.productId, cartItem.goodsId, number, cartItem.id);
}, },
checkoutOrder: function() { cutNumber: function(event) {
//获取已选择的商品
let that = this;
var checkedGoods = this.data.cartGoods.filter(function(element, index, array) { let itemIndex = event.target.dataset.itemIndex;
if (element.checked == true) { let cartItem = this.data.cartGoods[itemIndex];
return true; let number = (cartItem.number - 1 > 1) ? cartItem.number - 1 : 1;
} else { cartItem.number = number;
return false; this.setData({
} cartGoods: this.data.cartGoods
}); });
this.updateCart(cartItem.productId, cartItem.goodsId, number, cartItem.id);
},
addNumber: function(event) {
let itemIndex = event.target.dataset.itemIndex;
let cartItem = this.data.cartGoods[itemIndex];
let number = cartItem.number + 1;
cartItem.number = number;
this.setData({
cartGoods: this.data.cartGoods
});
this.updateCart(cartItem.productId, cartItem.goodsId, number, cartItem.id);
if (checkedGoods.length <= 0) { },
return false; checkoutOrder: function() {
} //获取已选择的商品
let that = this;
// storage中设置了cartId,则是购物车购买 var checkedGoods = this.data.cartGoods.filter(function(element, index, array) {
try { if (element.checked == true) {
wx.setStorageSync('cartId', 0); return true;
wx.navigateTo({ } else {
url: '../shopping/checkout/checkout' return false;
}) }
} catch (e) {} });
}, if (checkedGoods.length <= 0) {
deleteCart: function() { return false;
//获取已选择的商品 }
let that = this;
let productIds = this.data.cartGoods.filter(function(element, index, array) { // storage中设置了cartId,则是购物车购买
if (element.checked == true) { try {
return true; wx.setStorageSync('cartId', 0);
} else { wx.navigateTo({
return false; url: '../shopping/checkout/checkout'
} })
}); } catch (e) {}
if (productIds.length <= 0) { },
return false; deleteCart: function() {
} //获取已选择的商品
let that = this;
productIds = productIds.map(function(element, index, array) { let productIds = this.data.cartGoods.filter(function(element, index, array) {
if (element.checked == true) { if (element.checked == true) {
return element.productId; return true;
} } else {
}); return false;
}
});
if (productIds.length <= 0) {
return false;
}
util.request(api.CartDelete, { productIds = productIds.map(function(element, index, array) {
productIds: productIds if (element.checked == true) {
}, 'POST').then(function(res) { return element.productId;
if (res.errno === 0) { }
console.log(res.data);
let cartList = res.data.cartList.map(v => {
v.checked = false;
return v;
}); });
that.setData({
cartGoods: cartList,
cartTotal: res.data.cartTotal
});
}
that.setData({ util.request(api.CartDelete, {
checkedAllStatus: that.isCheckedAll() productIds: productIds
}); }, 'POST').then(function(res) {
}); if (res.errno === 0) {
} console.log(res.data);
let cartList = res.data.cartList.map(v => {
v.checked = false;
return v;
});
that.setData({
cartGoods: cartList,
cartTotal: res.data.cartTotal
});
}
that.setData({
checkedAllStatus: that.isCheckedAll()
});
});
}
}) })
\ No newline at end of file
{ {
"backgroundColor": "#f4f4f4", "backgroundColor": "#f4f4f4",
"navigationBarTitleText": "购物车" "navigationBarTitleText": "购物车"
} }
\ No newline at end of file
<view class="container"> <view class="container">
<view class="no-login" wx:if="{{!hasLogin}}"> <view class="no-login" wx:if="{{!hasLogin}}">
<view class="c"> <view class="c">
<image src="http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/noCart-a8fe3f12e5.png" /> <image src="http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/noCart-a8fe3f12e5.png" />
<text>还没有登录</text> <text>还没有登录</text>
<button plain="true" bindtap="goLogin">去登录</button> <button plain="true" bindtap="goLogin">去登录</button>
</view> </view>
</view>
<view class='login' wx:else>
<view class="service-policy">
<view class="item">30天无忧退货</view>
<view class="item">48小时快速退款</view>
<view class="item">满88元免邮费</view>
</view>
<view class="no-cart" wx:if="{{cartGoods.length <= 0}}">
<view class="c">
<image src="http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/noCart-a8fe3f12e5.png" />
<text>去添加点什么吧</text>
</view>
</view> </view>
<view class="cart-view" wx:else> <view class='login' wx:else>
<view class="list"> <view class="service-policy">
<view class="group-item"> <view class="item">30天无忧退货</view>
<view class="goods"> <view class="item">48小时快速退款</view>
<view class="item {{isEditCart ? 'edit' : ''}}" wx:for="{{cartGoods}}" wx:key="id"> <view class="item">满88元免邮费</view>
<view class="checkbox {{item.checked ? 'checked' : ''}}" bindtap="checkedItem" data-item-index="{{index}}"></view> </view>
<view class="cart-goods"> <view class="no-cart" wx:if="{{cartGoods.length <= 0}}">
<image class="img" src="{{item.picUrl}}"></image> <view class="c">
<view class="info"> <image src="http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/noCart-a8fe3f12e5.png" />
<view class="t"> <text>去添加点什么吧</text>
<text class="name">{{item.goodsName}}</text> </view>
<text class="num">x{{item.number}}</text> </view>
</view> <view class="cart-view" wx:else>
<view class="attr">{{ isEditCart ? '已选择:' : ''}}{{item.goodsSpecificationValues||''}}</view> <view class="list">
<view class="b"> <view class="group-item">
<text class="price">¥{{item.price}}</text> <view class="goods">
<view class="selnum"> <view class="item {{isEditCart ? 'edit' : ''}}" wx:for="{{cartGoods}}" wx:key="id">
<view class="cut" bindtap="cutNumber" data-item-index="{{index}}">-</view> <view class="checkbox {{item.checked ? 'checked' : ''}}" bindtap="checkedItem" data-item-index="{{index}}"></view>
<input value="{{item.number}}" class="number" disabled="true" type="number" /> <view class="cart-goods">
<view class="add" bindtap="addNumber" data-item-index="{{index}}">+</view> <image class="img" src="{{item.picUrl}}"></image>
<view class="info">
<view class="t">
<text class="name">{{item.goodsName}}</text>
<text class="num">x{{item.number}}</text>
</view>
<view class="attr">{{ isEditCart ? '已选择:' : ''}}{{item.goodsSpecificationValues||''}}</view>
<view class="b">
<text class="price">¥{{item.price}}</text>
<view class="selnum">
<view class="cut" bindtap="cutNumber" data-item-index="{{index}}">-</view>
<input value="{{item.number}}" class="number" disabled="true" type="number" />
<view class="add" bindtap="addNumber" data-item-index="{{index}}">+</view>
</view>
</view>
</view>
</view>
</view>
</view> </view>
</view>
</view> </view>
</view>
</view>
<view class="cart-bottom">
<view class="checkbox {{checkedAllStatus ? 'checked' : ''}}" bindtap="checkedAll">全选({{cartTotal.checkedGoodsCount}})</view>
<view class="total">{{!isEditCart ? '¥'+cartTotal.checkedGoodsAmount : ''}}</view>
<view class="delete" bindtap="editCart">{{!isEditCart ? '编辑' : '完成'}}</view>
<view class="checkout" bindtap="deleteCart" wx:if="{{isEditCart}}">删除所选</view>
<view class="checkout" bindtap="checkoutOrder" wx:if="{{!isEditCart}}">下单</view>
</view> </view>
</view>
</view> </view>
</view>
<view class="cart-bottom">
<view class="checkbox {{checkedAllStatus ? 'checked' : ''}}" bindtap="checkedAll">全选({{cartTotal.checkedGoodsCount}})</view>
<view class="total">{{!isEditCart ? '¥'+cartTotal.checkedGoodsAmount : ''}}</view>
<view class="delete" bindtap="editCart">{{!isEditCart ? '编辑' : '完成'}}</view>
<view class="checkout" bindtap="deleteCart" wx:if="{{isEditCart}}">删除所选</view>
<view class="checkout" bindtap="checkoutOrder" wx:if="{{!isEditCart}}">下单</view>
</view>
</view> </view>
</view>
</view> </view>
\ No newline at end of file
page { page {
height: 100%; height: 100%;
min-height: 100%; min-height: 100%;
background: #f4f4f4; background: #f4f4f4;
} }
.container { .container {
background: #f4f4f4; background: #f4f4f4;
width: 100%; width: 100%;
height: auto; height: auto;
min-height: 100%; min-height: 100%;
overflow: hidden; overflow: hidden;
} }
.service-policy { .service-policy {
width: 750rpx; width: 750rpx;
height: 73rpx; height: 73rpx;
background: #f4f4f4; background: #f4f4f4;
padding: 0 31.25rpx; padding: 0 31.25rpx;
display: flex; display: flex;
flex-flow: row nowrap; flex-flow: row nowrap;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
} }
.service-policy .item { .service-policy .item {
/* background: url(http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/servicePolicyRed-518d32d74b.png) 0 center no-repeat; */ /* background: url(http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/servicePolicyRed-518d32d74b.png) 0 center no-repeat; */
background-size: 10rpx; background-size: 10rpx;
padding-left: 15rpx; padding-left: 15rpx;
display: flex; display: flex;
align-items: center; align-items: center;
font-size: 25rpx; font-size: 25rpx;
color: #a78845; color: #a78845;
} }
.no-login { .no-login {
width: 100%; width: 100%;
height: auto; height: auto;
margin: 0 auto; margin: 0 auto;
color: #a78845; color: #a78845;
} }
.no-login .c { .no-login .c {
width: 100%; width: 100%;
height: auto; height: auto;
margin-top: 200rpx; margin-top: 200rpx;
color: #a78845; color: #a78845;
} }
.no-login .c image { .no-login .c image {
margin: 0 auto; margin: 0 auto;
display: block; display: block;
text-align: center; text-align: center;
width: 258rpx; width: 258rpx;
height: 258rpx; height: 258rpx;
color: #a78845; color: #a78845;
} }
.no-login .c text { .no-login .c text {
margin: 0 auto; margin: 0 auto;
display: block; display: block;
width: 258rpx; width: 258rpx;
height: 59rpx; height: 59rpx;
line-height: 29rpx; line-height: 29rpx;
text-align: center; text-align: center;
font-size: 40rpx; font-size: 40rpx;
color: #a78845; color: #a78845;
} }
.no-login button { .no-login button {
width: 60%; width: 60%;
margin: 0 auto; margin: 0 auto;
color: #a78845; color: #a78845;
/* background-color: #FFF; */ /* background-color: #FFF; */
border-color: #a78845; border-color: #a78845;
} }
.no-cart { .no-cart {
width: 100%; width: 100%;
height: auto; height: auto;
margin: 0 auto; margin: 0 auto;
color: #a78845; color: #a78845;
} }
.no-cart .c { .no-cart .c {
width: 100%; width: 100%;
height: auto; height: auto;
margin-top: 200rpx; margin-top: 200rpx;
} }
.no-cart .c image { .no-cart .c image {
margin: 0 auto; margin: 0 auto;
display: block; display: block;
text-align: center; text-align: center;
width: 258rpx; width: 258rpx;
height: 258rpx; height: 258rpx;
} }
.no-cart .c text { .no-cart .c text {
margin: 0 auto; margin: 0 auto;
display: block; display: block;
width: 258rpx; width: 258rpx;
height: 29rpx; height: 29rpx;
line-height: 29rpx; line-height: 29rpx;
text-align: center; text-align: center;
font-size: 29rpx; font-size: 29rpx;
color: #999; color: #999;
} }
.cart-view { .cart-view {
width: 100%; width: 100%;
height: auto; height: auto;
overflow: hidden; overflow: hidden;
} }
.cart-view .list { .cart-view .list {
height: auto; height: auto;
width: 100%; width: 100%;
overflow: hidden; overflow: hidden;
margin-bottom: 120rpx; margin-bottom: 120rpx;
} }
.cart-view .group-item { .cart-view .group-item {
height: auto; height: auto;
width: 100%; width: 100%;
background: #fff; background: #fff;
margin-bottom: 18rpx; margin-bottom: 18rpx;
} }
.cart-view .item { .cart-view .item {
height: 164rpx; height: 164rpx;
width: 100%; width: 100%;
overflow: hidden; overflow: hidden;
} }
.cart-view .item .checkbox { .cart-view .item .checkbox {
float: left; float: left;
height: 34rpx; height: 34rpx;
width: 34rpx; width: 34rpx;
margin: 65rpx 18rpx 65rpx 26rpx; margin: 65rpx 18rpx 65rpx 26rpx;
background: url(http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/checkbox-0e09baa37e.png) no-repeat; background: url(http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/checkbox-0e09baa37e.png) no-repeat;
background-size: 34rpx; background-size: 34rpx;
} }
.cart-view .item .checkbox.checked { .cart-view .item .checkbox.checked {
background: url(http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/checkbox-checked-822e54472a.png) no-repeat; background: url(http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/checkbox-checked-822e54472a.png) no-repeat;
background-size: 34rpx; background-size: 34rpx;
} }
.cart-view .item .cart-goods { .cart-view .item .cart-goods {
float: left; float: left;
height: 164rpx; height: 164rpx;
width: 672rpx; width: 672rpx;
border-bottom: 1px solid #f4f4f4; border-bottom: 1px solid #f4f4f4;
} }
.cart-view .item .img { .cart-view .item .img {
float: left; float: left;
height: 125rpx; height: 125rpx;
width: 125rpx; width: 125rpx;
background: #f4f4f4; background: #f4f4f4;
margin: 19.5rpx 18rpx 19.5rpx 0; margin: 19.5rpx 18rpx 19.5rpx 0;
} }
.cart-view .item .info { .cart-view .item .info {
float: left; float: left;
height: 125rpx; height: 125rpx;
width: 503rpx; width: 503rpx;
margin: 19.5rpx 26rpx 19.5rpx 0; margin: 19.5rpx 26rpx 19.5rpx 0;
} }
.cart-view .item .t { .cart-view .item .t {
margin: 8rpx 0; margin: 8rpx 0;
height: 28rpx; height: 28rpx;
font-size: 25rpx; font-size: 25rpx;
color: #333; color: #333;
overflow: hidden; overflow: hidden;
} }
.cart-view .item .name { .cart-view .item .name {
height: 28rpx; height: 28rpx;
max-width: 310rpx; max-width: 310rpx;
line-height: 28rpx; line-height: 28rpx;
font-size: 25rpx; font-size: 25rpx;
color: #333; color: #333;
overflow: hidden; overflow: hidden;
} }
.cart-view .item .num { .cart-view .item .num {
height: 28rpx; height: 28rpx;
line-height: 28rpx; line-height: 28rpx;
float: right; float: right;
} }
.cart-view .item .attr { .cart-view .item .attr {
margin-bottom: 17rpx; margin-bottom: 17rpx;
height: 24rpx; height: 24rpx;
line-height: 24rpx; line-height: 24rpx;
font-size: 22rpx; font-size: 22rpx;
color: #666; color: #666;
overflow: hidden; overflow: hidden;
} }
.cart-view .item .b { .cart-view .item .b {
height: 28rpx; height: 28rpx;
line-height: 28rpx; line-height: 28rpx;
font-size: 25rpx; font-size: 25rpx;
color: #333; color: #333;
overflow: hidden; overflow: hidden;
} }
.cart-view .item .price { .cart-view .item .price {
float: left; float: left;
color: #a78845; color: #a78845;
} }
.cart-view .item .open { .cart-view .item .open {
height: 28rpx; height: 28rpx;
width: 150rpx; width: 150rpx;
display: block; display: block;
float: right; float: right;
background: url(http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/arrowDown-d48093db25.png) right center no-repeat; background: url(http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/arrowDown-d48093db25.png) right center no-repeat;
background-size: 25rpx; background-size: 25rpx;
font-size: 25rpx; font-size: 25rpx;
color: #333; color: #333;
} }
.cart-view .item.edit .t { .cart-view .item.edit .t {
display: none; display: none;
} }
.cart-view .item.edit .attr { .cart-view .item.edit .attr {
text-align: right; text-align: right;
background: url(http://yanxuan.nosdn.127.net/hxm/yanxuan-wap/p/20161201/style/img/icon-normal/arrow-right1-e9828c5b35.png) right center no-repeat; background: url(http://yanxuan.nosdn.127.net/hxm/yanxuan-wap/p/20161201/style/img/icon-normal/arrow-right1-e9828c5b35.png) right center no-repeat;
padding-right: 25rpx; padding-right: 25rpx;
background-size: 12rpx 20rpx; background-size: 12rpx 20rpx;
margin-bottom: 24rpx; margin-bottom: 24rpx;
height: 39rpx; height: 39rpx;
line-height: 39rpx; line-height: 39rpx;
font-size: 24rpx; font-size: 24rpx;
color: #999; color: #999;
overflow: hidden; overflow: hidden;
} }
.cart-view .item.edit .b { .cart-view .item.edit .b {
display: flex; display: flex;
height: 52rpx; height: 52rpx;
overflow: hidden; overflow: hidden;
} }
.cart-view .item.edit .price { .cart-view .item.edit .price {
line-height: 52rpx; line-height: 52rpx;
height: 52rpx; height: 52rpx;
flex: 1; flex: 1;
} }
.cart-view .item .selnum { .cart-view .item .selnum {
display: none; display: none;
} }
.cart-view .item.edit .selnum { .cart-view .item.edit .selnum {
width: 235rpx; width: 235rpx;
height: 52rpx; height: 52rpx;
border: 1rpx solid #ccc; border: 1rpx solid #ccc;
display: flex; display: flex;
} }
.selnum .cut { .selnum .cut {
width: 70rpx; width: 70rpx;
height: 100%; height: 100%;
text-align: center; text-align: center;
line-height: 50rpx; line-height: 50rpx;
} }
.selnum .number { .selnum .number {
flex: 1; flex: 1;
height: 100%; height: 100%;
text-align: center; text-align: center;
line-height: 68.75rpx; line-height: 68.75rpx;
border-left: 1px solid #ccc; border-left: 1px solid #ccc;
border-right: 1px solid #ccc; border-right: 1px solid #ccc;
float: left; float: left;
} }
.selnum .add { .selnum .add {
width: 80rpx; width: 80rpx;
height: 100%; height: 100%;
text-align: center; text-align: center;
line-height: 50rpx; line-height: 50rpx;
} }
.cart-view .group-item .header { .cart-view .group-item .header {
width: 100%; width: 100%;
height: 94rpx; height: 94rpx;
line-height: 94rpx; line-height: 94rpx;
padding: 0 26rpx; padding: 0 26rpx;
border-bottom: 1px solid #f4f4f4; border-bottom: 1px solid #f4f4f4;
} }
.cart-view .promotion .icon { .cart-view .promotion .icon {
display: inline-block; display: inline-block;
height: 24rpx; height: 24rpx;
width: 15rpx; width: 15rpx;
} }
.cart-view .promotion { .cart-view .promotion {
margin-top: 25.5rpx; margin-top: 25.5rpx;
float: left; float: left;
height: 43rpx; height: 43rpx;
width: 480rpx; width: 480rpx;
/*margin-right: 84rpx;*/ /*margin-right: 84rpx;*/
line-height: 43rpx; line-height: 43rpx;
font-size: 0; font-size: 0;
} }
.cart-view .promotion .tag { .cart-view .promotion .tag {
border: 1px solid #f48f18; border: 1px solid #f48f18;
height: 37rpx; height: 37rpx;
line-height: 31rpx; line-height: 31rpx;
padding: 0 9rpx; padding: 0 9rpx;
margin-right: 10rpx; margin-right: 10rpx;
color: #f48f18; color: #f48f18;
font-size: 24.5rpx; font-size: 24.5rpx;
} }
.cart-view .promotion .txt { .cart-view .promotion .txt {
height: 43rpx; height: 43rpx;
line-height: 43rpx; line-height: 43rpx;
padding-right: 10rpx; padding-right: 10rpx;
color: #333; color: #333;
font-size: 29rpx; font-size: 29rpx;
overflow: hidden; overflow: hidden;
} }
.cart-view .get { .cart-view .get {
margin-top: 18rpx; margin-top: 18rpx;
float: right; float: right;
height: 58rpx; height: 58rpx;
padding-left: 14rpx; padding-left: 14rpx;
border-left: 1px solid #d9d9d9; border-left: 1px solid #d9d9d9;
line-height: 58rpx; line-height: 58rpx;
font-size: 29rpx; font-size: 29rpx;
color: #333; color: #333;
} }
.cart-bottom { .cart-bottom {
position: fixed; position: fixed;
bottom: 0; bottom: 0;
left: 0; left: 0;
height: 100rpx; height: 100rpx;
width: 100%; width: 100%;
background: #fff; background: #fff;
display: flex; display: flex;
} }
.cart-bottom .checkbox { .cart-bottom .checkbox {
height: 34rpx; height: 34rpx;
padding-left: 60rpx; padding-left: 60rpx;
line-height: 34rpx; line-height: 34rpx;
margin: 33rpx 18rpx 33rpx 26rpx; margin: 33rpx 18rpx 33rpx 26rpx;
background: url(http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/checkbox-0e09baa37e.png) no-repeat; background: url(http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/checkbox-0e09baa37e.png) no-repeat;
background-size: 34rpx; background-size: 34rpx;
font-size: 29rpx; font-size: 29rpx;
} }
.cart-bottom .checkbox.checked { .cart-bottom .checkbox.checked {
background: url(http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/checkbox-checked-822e54472a.png) no-repeat; background: url(http://nos.netease.com/mailpub/hxm/yanxuan-wap/p/20150730/style/img/icon-normal/checkbox-checked-822e54472a.png) no-repeat;
background-size: 34rpx; background-size: 34rpx;
} }
.cart-bottom .total { .cart-bottom .total {
height: 34rpx; height: 34rpx;
flex: 1; flex: 1;
margin: 33rpx 10rpx; margin: 33rpx 10rpx;
font-size: 29rpx; font-size: 29rpx;
color: #a78845; color: #a78845;
} }
.cart-bottom .delete { .cart-bottom .delete {
height: 34rpx; height: 34rpx;
width: auto; width: auto;
margin: 33rpx 18rpx; margin: 33rpx 18rpx;
font-size: 29rpx; font-size: 29rpx;
} }
.cart-bottom .checkout { .cart-bottom .checkout {
height: 100rpx; height: 100rpx;
width: 210rpx; width: 210rpx;
text-align: center; text-align: center;
line-height: 100rpx; line-height: 100rpx;
font-size: 29rpx; font-size: 29rpx;
background: #a78845; background: #a78845;
color: #fff; color: #fff;
} }
...@@ -2,81 +2,81 @@ var util = require('../../utils/util.js'); ...@@ -2,81 +2,81 @@ var util = require('../../utils/util.js');
var api = require('../../config/api.js'); var api = require('../../config/api.js');
Page({ Page({
data: { data: {
categoryList: [], categoryList: [],
currentCategory: {}, currentCategory: {},
currentSubCategoryList: {}, currentSubCategoryList: {},
allList: {}, allList: {},
scrollLeft: 0, scrollLeft: 0,
scrollTop: 0, scrollTop: 0,
goodsCount: 0, goodsCount: 0,
scrollHeight: 0 scrollHeight: 0
}, },
onLoad: function(options) { onLoad: function(options) {
this.getCatalog(); this.getCatalog();
}, },
onPullDownRefresh() { onPullDownRefresh() {
wx.showNavigationBarLoading() //在标题栏中显示加载 wx.showNavigationBarLoading() //在标题栏中显示加载
this.getCatalog(); this.getCatalog();
wx.hideNavigationBarLoading() //完成停止加载 wx.hideNavigationBarLoading() //完成停止加载
wx.stopPullDownRefresh() //停止下拉刷新 wx.stopPullDownRefresh() //停止下拉刷新
}, },
getCatalog: function() { getCatalog: function() {
//CatalogList //CatalogList
let that = this; let that = this;
wx.showLoading({ wx.showLoading({
title: '加载中...', title: '加载中...',
}); });
util.request(api.CatalogAll).then(function(res) { util.request(api.CatalogAll).then(function(res) {
that.setData({ that.setData({
allList: res.data.allList, allList: res.data.allList,
categoryList: res.data.categoryList, categoryList: res.data.categoryList,
currentCategory: res.data.currentCategory, currentCategory: res.data.currentCategory,
currentSubCategoryList: res.data.currentSubCategory currentSubCategoryList: res.data.currentSubCategory
}); });
}); });
wx.hideLoading(); wx.hideLoading();
}, },
getCurrentCategory: function(item) { getCurrentCategory: function(item) {
let that = this; let that = this;
for (var key in that.data.allList) { for (var key in that.data.allList) {
if (key == item.id) { if (key == item.id) {
that.setData({ that.setData({
currentCategory: item, currentCategory: item,
currentSubCategoryList: that.data.allList[key] currentSubCategoryList: that.data.allList[key]
}); });
} }
} }
}, },
onReady: function() { onReady: function() {
// 页面渲染完成 // 页面渲染完成
}, },
onShow: function() { onShow: function() {
// 页面显示 // 页面显示
}, },
onHide: function() { onHide: function() {
// 页面隐藏 // 页面隐藏
}, },
onUnload: function() { onUnload: function() {
// 页面关闭 // 页面关闭
}, },
switchCate: function(event) { switchCate: function(event) {
if (this.data.currentCategory.id == event.currentTarget.dataset.id) { if (this.data.currentCategory.id == event.currentTarget.dataset.id) {
return false; return false;
} }
this.getCurrentCategory(event.currentTarget.dataset.id); this.getCurrentCategory(event.currentTarget.dataset.id);
}, },
levelClick: function(e) { levelClick: function(e) {
console.log(e.currentTarget.dataset.id) console.log(e.currentTarget.dataset.id)
wx.navigateTo({ wx.navigateTo({
url: "/pages/category/category?id=" + e.currentTarget.dataset.id url: "/pages/category/category?id=" + e.currentTarget.dataset.id
}) })
} }
}) })
\ No newline at end of file
.HotName{ .HotName {
font-size:80rpx; font-size: 80rpx;
margin-left:40rpx; margin-left: 40rpx;
color:#293539; color: #293539;
font-weight:300; font-weight: 300;
position: relative; position: relative;
} }
.HotName text{
width:14rpx; .HotName text {
height:14rpx; width: 14rpx;
position:absolute; height: 14rpx;
border:2px solid #a78845; position: absolute;
border-radius:50%; border: 2px solid #a78845;
} border-radius: 50%;
.menu-box{ }
width:80%;
margin:0 auto; .menu-box {
margin-top:40rpx; width: 80%;
} margin: 0 auto;
.menu-box-list{ margin-top: 40rpx;
text-align:center; }
margin-bottom:30rpx;
} .menu-box-list {
.menu-box-list .menu-list-title{ text-align: center;
color:#6a7275; margin-bottom: 30rpx;
font-size:40rpx; }
font-weight:300;
letter-spacing:20rpx; .menu-box-list .menu-list-title {
color: #6a7275;
font-size: 40rpx;
font-weight: 300;
letter-spacing: 20rpx;
position: relative; position: relative;
} }
.menu-box-list .hover{
color:#a78845; .menu-box-list .hover {
} color: #a78845;
.menu-box-list .hover .l{ }
width:10rpx;
height:10rpx; .menu-box-list .hover .l {
position:absolute; width: 10rpx;
border:2rpx solid #a78845; height: 10rpx;
border-radius:50%; position: absolute;
margin-left:-38rpx; border: 2rpx solid #a78845;
margin-top:30rpx; border-radius: 50%;
} margin-left: -38rpx;
.menu-box-list .hover .r{ margin-top: 30rpx;
width:10rpx; }
height:10rpx;
position:absolute; .menu-box-list .hover .r {
border:2rpx solid #a78845; width: 10rpx;
border-radius:50%; height: 10rpx;
margin-left:6rpx; position: absolute;
margin-top:30rpx; border: 2rpx solid #a78845;
} border-radius: 50%;
.menu-list-pro{ margin-left: 6rpx;
margin-top: 30rpx;
}
.menu-list-pro {
overflow-x: scroll; overflow-x: scroll;
margin-top: 40rpx; margin-top: 40rpx;
white-space:nowrap; white-space: nowrap;
text-overflow:ellipsis; text-overflow: ellipsis;
height: auto; height: auto;
width: 100%; width: 100%;
overflow: hidden; overflow: hidden;
...@@ -70,8 +78,8 @@ ...@@ -70,8 +78,8 @@
.menu-list-pro .icon { .menu-list-pro .icon {
height: 100rpx; height: 100rpx;
width: 100rpx; width: 100rpx;
border-radius:12rpx; border-radius: 12rpx;
box-shadow:0px 4rpx 4rpx 0px #cfc9ca; box-shadow: 0px 4rpx 4rpx 0px #cfc9ca;
} }
.menu-list-pro .txt { .menu-list-pro .txt {
...@@ -115,7 +123,7 @@ ...@@ -115,7 +123,7 @@
font-size: 30rpx; font-size: 30rpx;
} }
/* .menu-list-pro image{ /* .menu-list-pro image{
height: 80px; height: 80px;
width: 80px; width: 80px;
margin-right: 34rpx; margin-right: 34rpx;
...@@ -132,4 +140,4 @@ ...@@ -132,4 +140,4 @@
color: #333; color: #333;
height: 42rpx; height: 42rpx;
width: 80px; width: 80px;
} */ } */
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment