换系统

This commit is contained in:
2019-12-23 10:04:09 +08:00
parent c890ad64a2
commit 9a53bca281
205 changed files with 4897 additions and 4734 deletions

View File

@@ -1,4 +1,4 @@
.box{}
page{
background-color: #fbfbfb;
.box{}
page{
background-color: #fbfbfb;
}

View File

@@ -1,170 +1,170 @@
// pages/addaddress/addaddress.js
import { request } from "../../utils/bin"
Page({
/**
* 页面的初始数据
*/
data: {
canshu: [],
no: 0,
userid:"",
show: false,
arealist:[],
area:["请选择","请选择","请选择"]
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
request({
url: "User/getArea",
urldata:{
parent_id:0
},
}).then((res)=>{
console.log(res)
this.setData({
arealist:res.data.result
})
console.log(this.data.arealist)
})
},
bindPickerChange(e) {
console.log(e)
},
showPopup() {
this.setData({ show: true });
},
onClose() {
this.setData({ show: false });
},
onMyEvent(e) {
console.log(e)
for (let i = 0; i < 8; i++) {
if (i == e.currentTarget.dataset.no) {
this.data.canshu[i] = e.detail
}
}
console.log(this.data.canshu)
},
choose(e){
console.log(e.currentTarget.dataset.id,e.currentTarget.dataset.name,e.currentTarget.dataset)
let type=parseInt(e.currentTarget.dataset.type)
request({
url: "User/getArea",
urldata:{
parent_id:e.currentTarget.dataset.id
},
}).then((res)=>{
console.log(res)
if(res.data.result.length){
this.setData({
arealist1:res.data.result
})
// this.data.area[type]=e.currentTarget.dataset.name
console.log(this.data.area,123)
}
// for(let i in this.data.area){
// if(i==type){
// this.data.area[i]=e.currentTarget.dataset.name
// }
// }
this.data.area[0]=e.currentTarget.dataset.name
console.log(this.data.area,this.data.arealist)
})
},
save() {
// wx.navigateTo({
// url: "/pages/chooseaddr/chooseaddr"
// })
request({
url: "User/validateOpenid",
}).then((res)=>{
console.log(res,1452)
this.setData({
userid:res.data.data.user_id
})
request({
url: "User/addAddress",
urldata:{
user_id:this.data.userid
},
method:"POST",
data: {
address: "Wesrdtfyguhijkl",
city: "339",
consignee: "srdtfyguhijokl",
country: 1,
district: "361",
is_default: 0,
mobile: "19953879035",
province: "338",
twon: 0,
user_id: "9",
zipcode: "271103",
}
}).then((res)=>{
console.log(res)
})
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
// pages/addaddress/addaddress.js
import { request } from "../../utils/bin"
Page({
/**
* 页面的初始数据
*/
data: {
canshu: [],
no: 0,
userid:"",
show: false,
arealist:[],
area:["请选择","请选择","请选择"]
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
request({
url: "User/getArea",
urldata:{
parent_id:0
},
}).then((res)=>{
console.log(res)
this.setData({
arealist:res.data.result
})
console.log(this.data.arealist)
})
},
bindPickerChange(e) {
console.log(e)
},
showPopup() {
this.setData({ show: true });
},
onClose() {
this.setData({ show: false });
},
onMyEvent(e) {
console.log(e)
for (let i = 0; i < 8; i++) {
if (i == e.currentTarget.dataset.no) {
this.data.canshu[i] = e.detail
}
}
console.log(this.data.canshu)
},
choose(e){
console.log(e.currentTarget.dataset.id,e.currentTarget.dataset.name,e.currentTarget.dataset)
let type=parseInt(e.currentTarget.dataset.type)
request({
url: "User/getArea",
urldata:{
parent_id:e.currentTarget.dataset.id
},
}).then((res)=>{
console.log(res)
if(res.data.result.length){
this.setData({
arealist1:res.data.result
})
// this.data.area[type]=e.currentTarget.dataset.name
console.log(this.data.area,123)
}
// for(let i in this.data.area){
// if(i==type){
// this.data.area[i]=e.currentTarget.dataset.name
// }
// }
this.data.area[0]=e.currentTarget.dataset.name
console.log(this.data.area,this.data.arealist)
})
},
save() {
// wx.navigateTo({
// url: "/pages/chooseaddr/chooseaddr"
// })
request({
url: "User/validateOpenid",
}).then((res)=>{
console.log(res,1452)
this.setData({
userid:res.data.data.user_id
})
request({
url: "User/addAddress",
urldata:{
user_id:this.data.userid
},
method:"POST",
data: {
address: "Wesrdtfyguhijkl",
city: "339",
consignee: "srdtfyguhijokl",
country: 1,
district: "361",
is_default: 0,
mobile: "19953879035",
province: "338",
twon: 0,
user_id: "9",
zipcode: "271103",
}
}).then((res)=>{
console.log(res)
})
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})

View File

@@ -1,9 +1,9 @@
{
"usingComponents": {
"shuru": "/components/addaddress/shuru/shuru",
"addradd": "/components/chooseaddr/addradd/addradd",
"van-popup": "../utils/dist/popup/index",
"van-tab": "../utils/dist/tab/index",
"van-tabs": "../utils/dist/tabs/index"
}
{
"usingComponents": {
"shuru": "/components/addaddress/shuru/shuru",
"addradd": "/components/chooseaddr/addradd/addradd",
"van-popup": "../utils/dist/popup/index",
"van-tab": "../utils/dist/tab/index",
"van-tabs": "../utils/dist/tabs/index"
}
}

View File

@@ -1,17 +1,17 @@
.addaddress {
background-color: white;
.btn1 {
position: fixed;
bottom: 102rpx;
left: 50rpx;
}
.choose{
width:100%;
height: 500rpx;
.item{
text-indent: 15rpx;
line-height: 70rpx;
}
}
.addaddress {
background-color: white;
.btn1 {
position: fixed;
bottom: 102rpx;
left: 50rpx;
}
.choose{
width:100%;
height: 500rpx;
.item{
text-indent: 15rpx;
line-height: 70rpx;
}
}
}

View File

@@ -1,42 +1,42 @@
<view class="addaddress">
<shuru left="收件人" right="姓名需和身份证一致" bindmyevent="onMyEvent" data-no="0"></shuru>
<shuru left="手机号" right="请填入常用的手机号码" bindmyevent="onMyEvent" data-no="1"></shuru>
<picker bindchange="bindPickerChange" value="{{item.item_id?item.item_id:0}}" range="{{info.goods.goods_spec_list?info.goods.goods_spec_list:['默认规格']}}">
<shuru left="国家" right="CN中国大陆" ifarrow="{{true}}" data-no="2"></shuru>
</picker>
<!-- <picker bindchange="bindPickerChange" value="{{item.item_id?item.item_id:0}}" range="{{info.goods.goods_spec_list?info.goods.goods_spec_list:['默认规格']}}">
<shuru left="城市信息" right="北京市 北京市 东城区" ifarrow="{{true}}" data-no="3"></shuru>
</picker> -->
<view bindtap="showPopup">
<shuru left="城市信息" right="北京市 北京市 东城区" ifarrow="{{true}}" data-no="3"></shuru>
</view>
<van-popup show="{{ show }}" position="bottom" bind:close="onClose">
<van-tabs class="tab" swipe-threshold="5">
<van-tab title="{{area[0]}}">
<view class="choose">
<view class="item" wx:for="{{arealist}}" bindtap="choose" data-type="0" data-id="{{item.id}}" data-name="{{item.name}}">
{{item.name}}
</view>
</view>
</van-tab>
<van-tab title="{{area[1]}}">
<view class="choose">
<view class="item" wx:for="{{arealist1}}" data-type="1" data-id="{{item.id}}" data-name="{{item.name}}">
{{item.name}}
</view>
</view>
</van-tab>
<van-tab title="{{area[2]}}">
<view class="choose">
<view class="item" wx:for="{{arealist2}}" data-type="2" data-id="{{item.id}}" data-name="{{item.name}}">
{{item.name}}
</view>
</view>
</van-tab>
</van-tabs>
</van-popup>
<shuru left="街道地址" right="街道地址" bindmyevent="onMyEvent" data-no="4"></shuru>
<shuru left="邮政编码" right="邮政编码" bindmyevent="onMyEvent" data-no="5"></shuru>
<shuru left="身份证号" right="可为空,部分商品需要" bindmyevent="onMyEvent" data-no="6"></shuru>
<addradd text="保存地址" class="btn1" bindtap="save"></addradd>
<view class="addaddress">
<shuru left="收件人" right="姓名需和身份证一致" bindmyevent="onMyEvent" data-no="0"></shuru>
<shuru left="手机号" right="请填入常用的手机号码" bindmyevent="onMyEvent" data-no="1"></shuru>
<picker bindchange="bindPickerChange" value="{{item.item_id?item.item_id:0}}" range="{{info.goods.goods_spec_list?info.goods.goods_spec_list:['默认规格']}}">
<shuru left="国家" right="CN中国大陆" ifarrow="{{true}}" data-no="2"></shuru>
</picker>
<!-- <picker bindchange="bindPickerChange" value="{{item.item_id?item.item_id:0}}" range="{{info.goods.goods_spec_list?info.goods.goods_spec_list:['默认规格']}}">
<shuru left="城市信息" right="北京市 北京市 东城区" ifarrow="{{true}}" data-no="3"></shuru>
</picker> -->
<view bindtap="showPopup">
<shuru left="城市信息" right="北京市 北京市 东城区" ifarrow="{{true}}" data-no="3"></shuru>
</view>
<van-popup show="{{ show }}" position="bottom" bind:close="onClose">
<van-tabs class="tab" swipe-threshold="5">
<van-tab title="{{area[0]}}">
<view class="choose">
<view class="item" wx:for="{{arealist}}" bindtap="choose" data-type="0" data-id="{{item.id}}" data-name="{{item.name}}">
{{item.name}}
</view>
</view>
</van-tab>
<van-tab title="{{area[1]}}">
<view class="choose">
<view class="item" wx:for="{{arealist1}}" data-type="1" data-id="{{item.id}}" data-name="{{item.name}}">
{{item.name}}
</view>
</view>
</van-tab>
<van-tab title="{{area[2]}}">
<view class="choose">
<view class="item" wx:for="{{arealist2}}" data-type="2" data-id="{{item.id}}" data-name="{{item.name}}">
{{item.name}}
</view>
</view>
</van-tab>
</van-tabs>
</van-popup>
<shuru left="街道地址" right="街道地址" bindmyevent="onMyEvent" data-no="4"></shuru>
<shuru left="邮政编码" right="邮政编码" bindmyevent="onMyEvent" data-no="5"></shuru>
<shuru left="身份证号" right="可为空,部分商品需要" bindmyevent="onMyEvent" data-no="6"></shuru>
<addradd text="保存地址" class="btn1" bindtap="save"></addradd>
</view>

View File

@@ -1,19 +1,19 @@
.addaddress {
background-color: white;
}
.addaddress .btn1 {
position: fixed;
bottom: 102rpx;
left: 50rpx;
}
.addaddress .choose {
width: 100%;
height: 500rpx;
}
.addaddress .choose .item {
text-indent: 15rpx;
line-height: 70rpx;
}
.addaddress {
background-color: white;
}
.addaddress .btn1 {
position: fixed;
bottom: 102rpx;
left: 50rpx;
}
.addaddress .choose {
width: 100%;
height: 500rpx;
}
.addaddress .choose .item {
text-indent: 15rpx;
line-height: 70rpx;
}

View File

@@ -1,159 +1,159 @@
// pages/chooseaddr/chooseaddr.js
import { request } from "../../utils/bin"
Page({
/**
* 页面的初始数据
*/
data: {
addresslist:[],
userid:""
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function(options) {
request({
url: "User/validateOpenid",
}).then((res)=>{
this.setData({
userid:res.data.data.user_id
})
request({
url: "User/getAddressList",
urldata:{
user_id:this.data.userid
},
}).then((res)=>{
console.log(res)
this.setData({
addresslist:res.data.result
})
})
})
},
add() {
wx.navigateTo({
url: "/pages/addaddress/addaddress"
})
},
// user_id/8/id/215
delete(e){
let t=this
wx.showModal({
title: '确认',
content: '要删除这个地址吗?',
success(){
console.log(e.currentTarget.dataset.id)
request({
url: "User/validateOpenid",
}).then((res)=>{
t.setData({
userid:res.data.data.user_id
})
request({
url: "User/del_address",
urldata:{
user_id:res.data.data.user_id,
id:e.currentTarget.dataset.id
},
}).then((res)=>{
console.log(res)
request({
url: "User/getAddressList",
urldata:{
user_id:t.data.userid
},
}).then((res)=>{
console.log(res)
t.setData({
addresslist:res.data.result
})
})
})
})
}
})
},
setdefault(e){
console.log(e.currentTarget.dataset.id)
request({
url: "User/setDefaultAddress",
urldata:{
user_id:this.data.userid,
address_id:e.currentTarget.dataset.id
},
}).then((res)=>{
console.log(res)
request({
url: "User/getAddressList",
urldata:{
user_id:this.data.userid
},
}).then((res)=>{
console.log(res)
this.setData({
addresslist:res.data.result
})
})
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function() {
}
// pages/chooseaddr/chooseaddr.js
import { request } from "../../utils/bin"
Page({
/**
* 页面的初始数据
*/
data: {
addresslist:[],
userid:""
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function(options) {
request({
url: "User/validateOpenid",
}).then((res)=>{
this.setData({
userid:res.data.data.user_id
})
request({
url: "User/getAddressList",
urldata:{
user_id:this.data.userid
},
}).then((res)=>{
console.log(res)
this.setData({
addresslist:res.data.result
})
})
})
},
add() {
wx.navigateTo({
url: "/pages/addaddress/addaddress"
})
},
// user_id/8/id/215
delete(e){
let t=this
wx.showModal({
title: '确认',
content: '要删除这个地址吗?',
success(){
console.log(e.currentTarget.dataset.id)
request({
url: "User/validateOpenid",
}).then((res)=>{
t.setData({
userid:res.data.data.user_id
})
request({
url: "User/del_address",
urldata:{
user_id:res.data.data.user_id,
id:e.currentTarget.dataset.id
},
}).then((res)=>{
console.log(res)
request({
url: "User/getAddressList",
urldata:{
user_id:t.data.userid
},
}).then((res)=>{
console.log(res)
t.setData({
addresslist:res.data.result
})
})
})
})
}
})
},
setdefault(e){
console.log(e.currentTarget.dataset.id)
request({
url: "User/setDefaultAddress",
urldata:{
user_id:this.data.userid,
address_id:e.currentTarget.dataset.id
},
}).then((res)=>{
console.log(res)
request({
url: "User/getAddressList",
urldata:{
user_id:this.data.userid
},
}).then((res)=>{
console.log(res)
this.setData({
addresslist:res.data.result
})
})
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function() {
}
})

View File

@@ -1,6 +1,6 @@
{
"usingComponents": {
"address": "/components/chooseaddr/address/address",
"addradd": "/components/chooseaddr/addradd/addradd"
}
{
"usingComponents": {
"address": "/components/chooseaddr/address/address",
"addradd": "/components/chooseaddr/addradd/addradd"
}
}

View File

@@ -1,10 +1,10 @@
.chooseaddress {
.addr {
margin-left: 30rpx;
}
.btn1 {
position: fixed;
bottom: 149rpx;
left: 50rpx;
}
.chooseaddress {
.addr {
margin-left: 30rpx;
}
.btn1 {
position: fixed;
bottom: 149rpx;
left: 50rpx;
}
}

View File

@@ -1,14 +1,14 @@
<view class="chooseaddress">
<view class="addr" wx:for="{{addresslist}}">
<address binddelete="delete" binddefault="setdefault"data-id="{{item.address_id}}" username="{{item.consignee}}" address="{{item.address}}" tel="{{item.mobile}}" youzheng="{{item.zipcode}}" isdefault="{{item.is_default}}"></address>
</view>
<!-- <view class="addr">
<address></address>
</view>
<view class="addr">
<address></address>
</view> -->
<view class="btn1" bindtap="add">
<addradd text="添加地址"></addradd>
</view>
<view class="chooseaddress">
<view class="addr" wx:for="{{addresslist}}">
<address binddelete="delete" binddefault="setdefault"data-id="{{item.address_id}}" username="{{item.consignee}}" address="{{item.address}}" tel="{{item.mobile}}" youzheng="{{item.zipcode}}" isdefault="{{item.is_default}}"></address>
</view>
<!-- <view class="addr">
<address></address>
</view>
<view class="addr">
<address></address>
</view> -->
<view class="btn1" bindtap="add">
<addradd text="添加地址"></addradd>
</view>
</view>

View File

@@ -1,9 +1,9 @@
.chooseaddress .addr {
margin-left: 30rpx;
}
.chooseaddress .btn1 {
position: fixed;
bottom: 149rpx;
left: 50rpx;
}
.chooseaddress .addr {
margin-left: 30rpx;
}
.chooseaddress .btn1 {
position: fixed;
bottom: 149rpx;
left: 50rpx;
}

View File

@@ -1,98 +1,98 @@
// pages/classify/classify.js
import { request } from "../../utils/bin"
Page({
/**
* 页面的初始数据
*/
data: {
type: [],
list:[]
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function(options) {
request({
url: "Goods/goodsCategoryList",
data: {
parent_id: 2
}
}).then((res) => {
// console.log(res)
this.setData({
type: res.data.result
})
this.select({detail:{id:res.data.result[0].id}})
console.log(this.data.type, 150)
})
},
select(a){
// console.log(a)
// a.detail.id
request({
url:'Goods/goodsList',
urldata:{
id:a.detail.id,
sort:'shop_price',
sort_asc:'desc',
p:0
}
}).then((res)=>{
console.log(res)
this.setData({
list:res.data.result.goods_list
})
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function() {
}
// pages/classify/classify.js
import { request } from "../../utils/bin"
Page({
/**
* 页面的初始数据
*/
data: {
type: [],
list:[]
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function(options) {
request({
url: "Goods/goodsCategoryList",
data: {
parent_id: 2
}
}).then((res) => {
// console.log(res)
this.setData({
type: res.data.result
})
this.select({detail:{id:res.data.result[0].id}})
console.log(this.data.type, 150)
})
},
select(a){
// console.log(a)
// a.detail.id
request({
url:'Goods/goodsList',
urldata:{
id:a.detail.id,
sort:'shop_price',
sort_asc:'desc',
p:0
}
}).then((res)=>{
console.log(res)
this.setData({
list:res.data.result.goods_list
})
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function() {
}
})

View File

@@ -1,7 +1,7 @@
.box{
width: 750rpx;
display: flex;
border-top: 1rpx solid #eaeaea;
.box{
width: 750rpx;
display: flex;
border-top: 1rpx solid #eaeaea;
}

View File

@@ -1,4 +1,4 @@
<view class="box">
<navigation bindselect="select" types="{{type}}"></navigation>
<list list="{{list}}"></list>
<view class="box">
<navigation bindselect="select" types="{{type}}"></navigation>
<list list="{{list}}"></list>
</view>

View File

@@ -1,9 +1,9 @@
.box {
border-top: #eaeaea solid 1rpx;
width: 750rpx;
// overflow: hidden;
display: flex;
align-items: center;
flex-direction: column;
}
.box {
border-top: #eaeaea solid 1rpx;
width: 750rpx;
// overflow: hidden;
display: flex;
align-items: center;
flex-direction: column;
}

View File

@@ -1,66 +1,66 @@
// pages/member/member.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
// pages/member/member.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})

View File

@@ -1,6 +1,6 @@
{
"usingComponents": {
"membertop": "/components/member/membertop/membertop",
"membershop": "/components/member/membershop/membershop"
}
{
"usingComponents": {
"membertop": "/components/member/membertop/membertop",
"membershop": "/components/member/membershop/membershop"
}
}

View File

@@ -1,11 +1,11 @@
.membershops {
display: flex;
flex-wrap: wrap;
.membershop {
// margin-right: 4rpx;
margin-bottom: 4rpx;
}
.membershop:nth-child(odd) {
margin-right: 4rpx;
}
.membershops {
display: flex;
flex-wrap: wrap;
.membershop {
// margin-right: 4rpx;
margin-bottom: 4rpx;
}
.membershop:nth-child(odd) {
margin-right: 4rpx;
}
}

View File

@@ -1,32 +1,32 @@
<view class="top">
<membertop></membertop>
<view class="membershops">
<view class="membershop">
<membershop></membershop>
</view>
<view class="membershop">
<membershop></membershop>
</view>
<view class="membershop">
<membershop></membershop>
</view>
<view class="membershop">
<membershop></membershop>
</view>
<view class="membershop">
<membershop></membershop>
</view>
<view class="membershop">
<membershop></membershop>
</view>
<view class="membershop">
<membershop></membershop>
</view>
<view class="membershop">
<membershop></membershop>
</view>
</view>
<view class="top">
<membertop></membertop>
<view class="membershops">
<view class="membershop">
<membershop></membershop>
</view>
<view class="membershop">
<membershop></membershop>
</view>
<view class="membershop">
<membershop></membershop>
</view>
<view class="membershop">
<membershop></membershop>
</view>
<view class="membershop">
<membershop></membershop>
</view>
<view class="membershop">
<membershop></membershop>
</view>
<view class="membershop">
<membershop></membershop>
</view>
<view class="membershop">
<membershop></membershop>
</view>
</view>
</view>

View File

@@ -1,12 +1,12 @@
.membershops {
display: flex;
flex-wrap: wrap;
}
.membershops .membershop {
margin-bottom: 4rpx;
}
.membershops .membershop:nth-child(odd) {
margin-right: 4rpx;
}
.membershops {
display: flex;
flex-wrap: wrap;
}
.membershops .membershop {
margin-bottom: 4rpx;
}
.membershops .membershop:nth-child(odd) {
margin-right: 4rpx;
}

View File

@@ -1,54 +1,54 @@
.box {
// border-top: 1rpx solid #eaeaea;
display: flex;
flex-direction: column;
align-items: center;
.list {
width: 650rpx;
.information {
margin-top: 43rpx;
display: flex;
flex-direction: column;
font-size: 28rpx;
color: #333;
border-bottom: 1rpx solid #eaeaea;
justify-content: space-between;
> input {
height: 28rpx;
font-size: 28rpx;
color: #333;
}
}
}
.upload{
width: 650rpx;
margin-top: 42rpx;
.title{
font-size: 26rpx;
color: #999;
}
.files{
margin-top: 42rpx;
width: 195rpx;
height: 195rpx;
box-shadow:2rpx 3rpx 16rpx 1rpx rgba(51,51,51,0.1);
>image{
width: 50rpx;
height: 41rpx;
background-color: #000;
margin: 77rpx 73rpx;
}
}
}
.submit{
margin-top: 295rpx;
width: 650rpx;
height: 98rpx;
background-color: #47C877;
border-radius: 49rpx;
font-size: 36rpx;
line-height: 98rpx;
text-align: center;
color: #fff;
}
}
.box {
// border-top: 1rpx solid #eaeaea;
display: flex;
flex-direction: column;
align-items: center;
.list {
width: 650rpx;
.information {
margin-top: 43rpx;
display: flex;
flex-direction: column;
font-size: 28rpx;
color: #333;
border-bottom: 1rpx solid #eaeaea;
justify-content: space-between;
> input {
height: 28rpx;
font-size: 28rpx;
color: #333;
}
}
}
.upload{
width: 650rpx;
margin-top: 42rpx;
.title{
font-size: 26rpx;
color: #999;
}
.files{
margin-top: 42rpx;
width: 195rpx;
height: 195rpx;
box-shadow:2rpx 3rpx 16rpx 1rpx rgba(51,51,51,0.1);
>image{
width: 50rpx;
height: 41rpx;
background-color: #000;
margin: 77rpx 73rpx;
}
}
}
.submit{
margin-top: 295rpx;
width: 650rpx;
height: 98rpx;
background-color: #47C877;
border-radius: 49rpx;
font-size: 36rpx;
line-height: 98rpx;
text-align: center;
color: #fff;
}
}

View File

@@ -1,9 +1,9 @@
.box {
display: flex;
flex-direction: column;
align-items: center;
width: 100%;
}
page {
background-color: #efefef;
}
.box {
display: flex;
flex-direction: column;
align-items: center;
width: 100%;
}
page {
background-color: #efefef;
}

View File

@@ -1,23 +1,110 @@
// pages/orderconfirm/orderconfirm.js
Component({
/**
* 组件的属性列表
*/
properties: {
},
/**
* 组件的初始数据
*/
data: {
},
/**
* 组件的方法列表
*/
methods: {
}
})
// pages/order/order.js
import bin from "../../utils/bin"
Page({
/**
* 页面的初始数据
*/
data: {
list: {}
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
bin.getusetid().then((res) => {
bin.request({
url: "Cart/cart2",
urldata: {
user_id: res
}
}).then((res) => {
console.log(res)
this.setData({
list: res.data.result
})
})
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
},
sub() {
bin.getusetid().then((res) => {
bin.request({
url: "Cart/cart3",
urldata: {
act: "",
submit_order: "",
user_id: res,
address_id: this.data.list.addressList.address_id,
user_money: 0,
pay_points: 0,
couponTypeSelect: 1,
coupon_id: 0,
pay_code: "weixin",
couponCode: ""
}
}).then((r) => {
console.log(r)
let { timeStamp, nonceStr, signType, sign } = r.data.data.wdata
// timeStamp = timeStamp
timeStamp = timeStamp.toString()
console.log(timeStamp)
wx.requestPayment({
timeStamp, nonceStr, package:r.data.data.wdata.package, signType, paySign:sign,
success(res) {console.log("成功")},
fail(res) {console.log(res)}
})
})
})
}
})

View File

@@ -1,11 +1,11 @@
{
"component": true,
"usingComponents": {
"shopinfo": "/components/orderconfirm/ordershopinfo/ordershopinfo",
"chooseway": "/components/orderconfirm/orderchooseway/orderchooseway",
"chooseaddr": "/components/orderconfirm/orderchooseaddr/orderchooseaddr",
"orderyf": "/components/orderconfirm/orderyf/orderyf",
"agree": "/components/orderconfirm/orderagreement/orderagreement",
"bottom": "/components/orderconfirm/orderbottom/orderbottom"
}
{
"component": true,
"usingComponents": {
"shopinfo": "/components/orderconfirm/ordershopinfo/ordershopinfo",
"chooseway": "/components/orderconfirm/orderchooseway/orderchooseway",
"chooseaddr": "/components/orderconfirm/orderchooseaddr/orderchooseaddr",
"orderyf": "/components/orderconfirm/orderyf/orderyf",
"agree": "/components/orderconfirm/orderagreement/orderagreement",
"bottom": "/components/orderconfirm/orderbottom/orderbottom"
}
}

View File

@@ -1,7 +1,7 @@
.orderconfirm {
.bottom {
width: 100%;
position: fixed;
bottom: 0;
}
.orderconfirm {
.bottom {
width: 100%;
position: fixed;
bottom: 0;
}
}

View File

@@ -1,11 +1,12 @@
<view class="orderconfirm">
<shopinfo></shopinfo>
<chooseway></chooseway>
<chooseaddr></chooseaddr>
<orderyf></orderyf>
<agree></agree>
<view class="bottom">
<bottom></bottom>
</view>
<view class="orderconfirm">
<shopinfo wx:for="{{list.cartList}}" title="{{item.goods_name}}" price="{{item.goods_price}}" spec="{{item.spec_key_name?item.spec_key_name:'默认规格'}}" img="{{item.image}}"></shopinfo>
<!-- <shopinfo></shopinfo> -->
<chooseway></chooseway>
<chooseaddr></chooseaddr>
<orderyf price="{{list.express_price}}"></orderyf>
<agree></agree>
<view class="bottom">
<bottom price="{{list.totalPrice.total_fee}}" bind:sub="sub"></bottom>
</view>
</view>

View File

@@ -1,5 +1,5 @@
.orderconfirm .bottom {
width: 100%;
position: fixed;
bottom: 0;
}
.orderconfirm .bottom {
width: 100%;
position: fixed;
bottom: 0;
}

View File

@@ -1,7 +1,7 @@
.box {
}
page {
background-color: #fbfbfb;
}
.box {
}
page {
background-color: #fbfbfb;
}

View File

@@ -1,118 +1,118 @@
// pages/personal/personal.js.
import {request} from "../../utils/bin"
Page({
/**
* 页面的初始数据
*/
data: {
openid:"",
username:"啦啦啦"
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function(options) {
},
toorder() {
wx.navigateTo({
url: "/pages/order/order"
})
},
toaddress() {
wx.navigateTo({
url: "/pages/chooseaddr/chooseaddr"
})
},
toserver() {
// wx.navigateTo({
// url: "/pages/order/order"
// })
},
tomember() {
wx.navigateTo({
url: "/pages/member/member"
})
},
toorder() {
wx.navigateTo({
url: "/pages/order/order"
})
},
toyue() {
wx.navigateTo({
url: "/pages/yue/yue"
})
},
toyongjin() {
wx.navigateTo({
url: "/pages/yongjin/yongjin"
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
login(){
if(this.data.openid == ""){
wx.navigateTo({
url:"/pages/login/login"
})
}
},
onReady: function() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function() {
this.setData({
openid:wx.getStorageSync("openid")
})
request({
url:"User/validateOpenid"
}).then((res)=>{
console.log(res)
})
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function() {
}
// pages/personal/personal.js.
import {request} from "../../utils/bin"
Page({
/**
* 页面的初始数据
*/
data: {
openid:"",
username:"啦啦啦"
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function(options) {
},
toorder() {
wx.navigateTo({
url: "/pages/order/order"
})
},
toaddress() {
wx.navigateTo({
url: "/pages/chooseaddr/chooseaddr"
})
},
toserver() {
// wx.navigateTo({
// url: "/pages/order/order"
// })
},
tomember() {
wx.navigateTo({
url: "/pages/member/member"
})
},
toorder() {
wx.navigateTo({
url: "/pages/order/order"
})
},
toyue() {
wx.navigateTo({
url: "/pages/yue/yue"
})
},
toyongjin() {
wx.navigateTo({
url: "/pages/yongjin/yongjin"
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
login(){
if(this.data.openid == ""){
wx.navigateTo({
url:"/pages/login/login"
})
}
},
onReady: function() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function() {
this.setData({
openid:wx.getStorageSync("openid")
})
request({
url:"User/validateOpenid"
}).then((res)=>{
console.log(res)
})
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function() {
}
})

View File

@@ -1,53 +1,53 @@
.box{
// border-top: 1rpx solid #eaeaea;
display: flex;
flex-direction: column;
align-items: center;
.card{
width: 690rpx;
height: 313rpx;
background-color: #47C877;
display: flex;
box-sizing: border-box;
padding: 50rpx;
font-size: 30rpx;
flex-direction: column;
color: #fff;
margin-top: 20rpx;
.user{
display: flex;
align-items: center;
.head{
width: 80rpx;
height: 80rpx;
margin-right: 32rpx;
border-radius: 50%;
background-color: #fff;
}
}
.balance{
display: flex;
flex-direction: column;
margin-top: 52rpx;
}
}
.list{
display: flex;
width: 690rpx;
margin-top: 33rpx;
flex-direction: column;
.option{
width: 100%;
height: 80rpx;
margin-bottom: 15rpx;
box-sizing: border-box;
padding: 0 30rpx;
box-shadow:2rpx 3rpx 16rpx 1rpx rgba(51,51,51,0.1);
display: flex;
align-items: center;
justify-content: space-between;
}
}
}
.box{
// border-top: 1rpx solid #eaeaea;
display: flex;
flex-direction: column;
align-items: center;
.card{
width: 690rpx;
height: 313rpx;
background-color: #47C877;
display: flex;
box-sizing: border-box;
padding: 50rpx;
font-size: 30rpx;
flex-direction: column;
color: #fff;
margin-top: 20rpx;
.user{
display: flex;
align-items: center;
.head{
width: 80rpx;
height: 80rpx;
margin-right: 32rpx;
border-radius: 50%;
background-color: #fff;
}
}
.balance{
display: flex;
flex-direction: column;
margin-top: 52rpx;
}
}
.list{
display: flex;
width: 690rpx;
margin-top: 33rpx;
flex-direction: column;
.option{
width: 100%;
height: 80rpx;
margin-bottom: 15rpx;
box-sizing: border-box;
padding: 0 30rpx;
box-shadow:2rpx 3rpx 16rpx 1rpx rgba(51,51,51,0.1);
display: flex;
align-items: center;
justify-content: space-between;
}
}
}

View File

@@ -1,43 +1,43 @@
<view class="box">
<view class="card">
<view class="user">
<image class="head"></image>
<text bind:tap="login">{{openid == ""?'点击登录':username}}</text>
</view>
<view class="balance">
<text>账户余额</text>
<text>480.00</text>
</view>
</view>
<view class="list">
<view class="option" bindtap="toorder">
<view>我的订单</view>
<view>></view>
</view>
<view class="option" bindtap="toaddress">
<view>地址管理</view>
<view>></view>
</view>
<view class="option" bindtap="toserver">
<view>在线客服</view>
<!-- <view><text style="font-size:28rpx;color:#999;">非会员 </text>></view> -->
</view>
<view class="option" bindtap="tomember">
<view>会员中心</view>
<view><text style="font-size:28rpx;color:#999;">非会员 </text>></view>
</view>
<view class="option" bindtap="toyue">
<view>我的余额</view>
<!-- <view><text style="font-size:28rpx;color:#999;">非会员 </text>></view> -->
</view>
<view class="option" bindtap="toyongjin">
<view>当前佣金</view>
<!-- <view><text style="font-size:28rpx;color:#999;">非会员 </text>></view> -->
</view>
<view class="option" bindtap="share">
<view>分 享</view>
<!-- <view><text style="font-size:28rpx;color:#999;">非会员 </text>></view> -->
</view>
</view>
<view class="box">
<view class="card">
<view class="user">
<image class="head"></image>
<text bind:tap="login">{{openid == ""?'点击登录':username}}</text>
</view>
<view class="balance">
<text>账户余额</text>
<text>480.00</text>
</view>
</view>
<view class="list">
<view class="option" bindtap="toorder">
<view>我的订单</view>
<view>></view>
</view>
<view class="option" bindtap="toaddress">
<view>地址管理</view>
<view>></view>
</view>
<view class="option" bindtap="toserver">
<view>在线客服</view>
<!-- <view><text style="font-size:28rpx;color:#999;">非会员 </text>></view> -->
</view>
<view class="option" bindtap="tomember">
<view>会员中心</view>
<view><text style="font-size:28rpx;color:#999;">非会员 </text>></view>
</view>
<view class="option" bindtap="toyue">
<view>我的余额</view>
<!-- <view><text style="font-size:28rpx;color:#999;">非会员 </text>></view> -->
</view>
<view class="option" bindtap="toyongjin">
<view>当前佣金</view>
<!-- <view><text style="font-size:28rpx;color:#999;">非会员 </text>></view> -->
</view>
<view class="option" bindtap="share">
<view>分 享</view>
<!-- <view><text style="font-size:28rpx;color:#999;">非会员 </text>></view> -->
</view>
</view>
</view>

View File

@@ -1,110 +1,111 @@
// pages/product/product.js'
import { request } from "../../utils/bin"
Page({
/**
* 页面的初始数据
*/
data: {
array: ['20粒', '30粒', '50粒', '100粒'],
userid:0
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function(options) {
console.log(options)
request({
url: "Goods/goodsInfo",
data: {
id: options.shopid
}
}).then((res) => {
// console.log(res)
this.setData({
info: res.data.result,
shopid:options.shopid,
})
// console.log(this.data.type, 150)
})
request({
url:"User/validateOpenid"
}).then((res)=>{
console.log(res)
this.setData({
userid:res.data.data.user_id
})
})
},
// goshop() {
// },
bindPickerChange(e) {
console.log(e.detail.value)
request({
url: "Cart/addCart",
data: {
goods_id: this.data.shopid,
goods_num: 1,
goods_spec:"",
user_id:this.data.userid
},
name:"session_id"
}).then((res)=>{
console.log(res)
wx.switchTab({
url: '/pages/shopping/shopping'
})
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function() {
}
// pages/product/product.js'
import { request } from "../../utils/bin"
Page({
/**
* 页面的初始数据
*/
data: {
array: ['20粒', '30粒', '50粒', '100粒'],
userid:0,
specs:{item:'默认规格'}
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function(options) {
console.log(options)
request({
url: "Goods/goodsInfo",
data: {
id: options.shopid
}
}).then((res) => {
// console.log(res)
this.setData({
info: res.data.result,
shopid:options.shopid,
})
// console.log(this.data.type, 150)
})
request({
url:"User/validateOpenid"
}).then((res)=>{
console.log(res)
this.setData({
userid:res.data.data.user_id
})
})
},
// goshop() {
// },
bindPickerChange(e) {
console.log(e.detail.value)
request({
url: "Cart/addCart",
data: {
goods_id: this.data.shopid,
goods_num: 1,
goods_spec:this.data.info.goods.goods_spec_list?this.data.info.goods.goods_spec_list[0][e.detail.value].item_id:'',
user_id:this.data.userid
},
name:"session_id"
}).then((res)=>{
console.log(res)
wx.switchTab({
url: '/pages/shopping/shopping'
})
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function() {
}
})

View File

@@ -1,37 +1,37 @@
.box{
border-top: 1rpx solid #eaeaea;
display: flex;
flex-direction: column;
align-items: center;
.swiper{
margin-top: 109rpx;
width: 389rpx;
height: 657rpx;
.image{
width: 389rpx;
height: 549rpx;
background-color: #000;
}
}
.title{
font-size: 32rpx;
color: #333;
margin-bottom: 34rpx;
width: 540rpx;
}
.menery{
font-size: 34rpx;
color: #666;
margin-bottom: 70rpx;
}
.add{
width: 308rpx;
height: 98rpx;
background-color: #50CA80;
border-radius: 49rpx;
line-height: 98rpx;
font-size: 34rpx;
color: #fff;
text-align: center;
}
.box{
border-top: 1rpx solid #eaeaea;
display: flex;
flex-direction: column;
align-items: center;
.swiper{
margin-top: 109rpx;
width: 389rpx;
height: 657rpx;
.image{
width: 389rpx;
height: 549rpx;
background-color: #000;
}
}
.title{
font-size: 32rpx;
color: #333;
margin-bottom: 34rpx;
width: 540rpx;
}
.menery{
font-size: 34rpx;
color: #666;
margin-bottom: 70rpx;
}
.add{
width: 308rpx;
height: 98rpx;
background-color: #50CA80;
border-radius: 49rpx;
line-height: 98rpx;
font-size: 34rpx;
color: #fff;
text-align: center;
}
}

View File

@@ -1,24 +1,24 @@
<view class="box">
<swiper indicator-dots="{{true}}" circular="{{true}}" autoplay="{{true}}" interval="{{2000}}" class="swiper">
<block wx:for="{{info.gallery}}">
<swiper-item>
<image class="image" src="{{item.image_url}}"> </image>
</swiper-item>
</block>
<!-- <block>
<swiper-item>
<image class="image"> </image>
</swiper-item>
</block>
<block>
<swiper-item>
<image class="image"> </image>
</swiper-item>
</block> -->
</swiper>
<text class="title">{{info.goods.goods_name}}</text>
<text class="menery">$ {{info.goods.shop_price}}</text>
<picker bindchange="bindPickerChange" value="{{item.item_id?item.item_id:0}}" range="{{info.goods.goods_spec_list?info.goods.goods_spec_list:['默认规格']}}">
<view class="add">加入购物车</view>
</picker>
<view class="box">
<swiper indicator-dots="{{true}}" circular="{{true}}" autoplay="{{true}}" interval="{{2000}}" class="swiper">
<block wx:for="{{info.gallery}}">
<swiper-item>
<image class="image" src="{{item.image_url}}"> </image>
</swiper-item>
</block>
<!-- <block>
<swiper-item>
<image class="image"> </image>
</swiper-item>
</block>
<block>
<swiper-item>
<image class="image"> </image>
</swiper-item>
</block> -->
</swiper>
<text class="title">{{info.goods.goods_name}}</text>
<text class="menery">$ {{info.goods.shop_price}}</text>
<picker bindchange="bindPickerChange" range="{{info.goods.goods_spec_list?info.goods.goods_spec_list[0]:specs}}" range-key="item">
<view class="add">加入购物车</view>
</picker>
</view>

View File

@@ -1,7 +1,7 @@
.box {
}
page {
background-color: #fbfbfb;
}
.box {
}
page {
background-color: #fbfbfb;
}

View File

@@ -1,48 +1,48 @@
.box {
border-top: 1rpx solid #eee;
.fill {
padding: 42rpx 30rpx;
box-sizing: border-box;
.cause {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 45rpx;
.title {
font-size: 26rpx;
color: #333;
}
.select {
font-size: 26rpx;
color: #999;
}
}
.upload {
.title {
font-size: 26rpx;
color: #333;
margin-bottom: 45rpx;
}
.img {
width: 187rpx;
height: 187rpx;
border: 1rpx solid rgba(229, 229, 229, 1);
border-radius: 6rpx;
}
}
}
.submit{
width: 650rpx;
height: 98rpx;
border-radius: 49rpx;
background-color: #47C877;
line-height: 98rpx;
text-align: center;
color: #fff;
font-size:36rpx;
margin-top: 67rpx;
margin-left: 50rpx;
}
}
.box {
border-top: 1rpx solid #eee;
.fill {
padding: 42rpx 30rpx;
box-sizing: border-box;
.cause {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 45rpx;
.title {
font-size: 26rpx;
color: #333;
}
.select {
font-size: 26rpx;
color: #999;
}
}
.upload {
.title {
font-size: 26rpx;
color: #333;
margin-bottom: 45rpx;
}
.img {
width: 187rpx;
height: 187rpx;
border: 1rpx solid rgba(229, 229, 229, 1);
border-radius: 6rpx;
}
}
}
.submit{
width: 650rpx;
height: 98rpx;
border-radius: 49rpx;
background-color: #47C877;
line-height: 98rpx;
text-align: center;
color: #fff;
font-size:36rpx;
margin-top: 67rpx;
margin-left: 50rpx;
}
}

View File

@@ -1,34 +1,34 @@
.box{
border-top: 1rpx solid #efefef;
.info{
border-bottom: 1rpx solid #efefef;
padding: 29rpx;
box-sizing: border-box;
.title{
font-size: 26rpx;
color: #333;
margin-bottom: 22rpx;
}
.msg{
font-size: 24rpx;
color: #999;
}
}
.submit{
display: flex;
margin-top: 36rpx;
padding: 0 30rpx;
justify-content: flex-end;
.button{
width: 133rpx;
height: 51rpx;
border: 1rpx solid #47C877;
border-radius: 25rpx;
color: #47C877;
font-size: 22rpx;
line-height: 51rpx;
text-align: center;
margin-left: 8rpx;
}
}
.box{
border-top: 1rpx solid #efefef;
.info{
border-bottom: 1rpx solid #efefef;
padding: 29rpx;
box-sizing: border-box;
.title{
font-size: 26rpx;
color: #333;
margin-bottom: 22rpx;
}
.msg{
font-size: 24rpx;
color: #999;
}
}
.submit{
display: flex;
margin-top: 36rpx;
padding: 0 30rpx;
justify-content: flex-end;
.button{
width: 133rpx;
height: 51rpx;
border: 1rpx solid #47C877;
border-radius: 25rpx;
color: #47C877;
font-size: 22rpx;
line-height: 51rpx;
text-align: center;
margin-left: 8rpx;
}
}
}

View File

@@ -1,7 +1,7 @@
.box {
border-top: #eaeaea solid 1rpx;
width: 750rpx;
display: flex;
align-items: center;
flex-direction: column;
}
.box {
border-top: #eaeaea solid 1rpx;
width: 750rpx;
display: flex;
align-items: center;
flex-direction: column;
}

View File

@@ -1,66 +1,66 @@
// pages/share/share.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
// pages/share/share.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})

View File

@@ -1,6 +1,6 @@
{
"usingComponents": {
"share": "/components/yue/share/share",
"yuedetail": "/components/yue/yuedetail/yuedetail"
}
{
"usingComponents": {
"share": "/components/yue/share/share",
"yuedetail": "/components/yue/yuedetail/yuedetail"
}
}

View File

@@ -1,7 +1,7 @@
.share {
background-color: white;
}
.detail {
margin-top: 41rpx;
.share {
background-color: white;
}
.detail {
margin-top: 41rpx;
}

View File

@@ -1,15 +1,15 @@
<view class="share">
<share></share>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="share">
<share></share>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
</view>

View File

@@ -1,7 +1,7 @@
.share {
background-color: white;
}
.detail {
margin-top: 41rpx;
}
.share {
background-color: white;
}
.detail {
margin-top: 41rpx;
}

View File

@@ -1,178 +1,237 @@
// pages/shopping/shopping.js
import { request } from "../../utils/bin"
Page({
/**
* 页面的初始数据
*/
data: {
list: [],
select: [],
userid: 0,
price: "0.00"
},
sel(a) {
console.log(a)
this.setData({
[`select[${a.detail.index}]`]: !a.detail.select
})
this.num();
},
/**
* 生命周期函数--监听页面加载
*/
getlist() {
request({
url: "Cart/cartList/session_id/" + wx.getStorageSync('openid'),
data: {
user_id: this.data.userid
}
}).then((res) => {
console.log(res)
this.setData({
list: res.data.result
})
this.num()
})
},
onLoad: function (options) {
request({
url: "User/validateOpenid"
}).then((res) => {
console.log(res)
this.setData({
userid: res.data.data.user_id
})
this.getlist()
})
},
sub() {
wx.navigateTo({
url: "/pages/orderconfirm/orderconfirm"
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
this.onLoad()
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
},
num() {
let num = 0;
let sel = 0;
for (let i in this.data.select) {
console.log(i)
if (this.data.select[i]) {
num += parseFloat(this.data.list[i].goods_price) * 100
sel++
}
}
if (sel == this.data.list.length && this.data.list.length != 0) {
this.setData({
all: true
})
} else {
this.setData({
all: false
})
}
this.setData({
price: num / 100
})
},
call() {
let sel = 0;
let select = []
for (let i in this.data.list) {
console.log(i)
if (this.data.select[i]) {
// num += parseFloat(this.data.list[i].goods_price)*100
sel++
} else {
select[i] = true
}
}
if (sel == this.data.list.length) {
this.setData({
all: false,
select: []
})
} else {
this.setData({
all: true,
select
})
}
this.num()
},
del() {
for (let i in this.data.list) {
// console.log(i)
if (this.data.select[i]) {
// num += parseFloat(this.data.list[i].goods_price)*100
// sel++
request({
url: "Cart/delCart",
urldata: {
id: this.data.list[i].id
}
}).then((res) => {
console.log('删除成功')
this.setData({
list: [],
select: [],
userid: 0,
price: "0.00"
})
this.onLoad()
})
}
}
}
// pages/shopping/shopping.js
import { request } from "../../utils/bin"
Page({
/**
* 页面的初始数据
*/
data: {
list: [],
select: [],
userid: 0,
price: "0.00"
},
sel(a) {
console.log(a)
request({
url: "Cart/updateSelect",
urldata: {
id: this.data.list[a.detail.index].goods_id,
select: this.data[`select[${a.detail.index}]`] ? 1 : 0
}
}).then((res) => {
this.setData({
[`select[${a.detail.index}]`]: !a.detail.select
})
this.num();
})
},
/**
* 生命周期函数--监听页面加载
*/
getlist() {
request({
url: "Cart/cartList/session_id/" + wx.getStorageSync('openid'),
urldata: {
user_id: this.data.userid
}
}).then((res) => {
console.log(res)
this.setData({
list: res.data.result
})
// this.num()
this.calls();
})
},
onLoad: function (options) {
request({
url: "User/validateOpenid"
}).then((res) => {
console.log(res)
this.setData({
userid: res.data.data.user_id
})
this.getlist()
})
},
sub() {
let sel = 0;
for (let i in this.data.select) {
// console.log(i)
if (this.data.select[i]) {
// num += parseFloat(this.data.list[i].goods_price) * 100
sel++
}
}
if (sel > 0) {
wx.navigateTo({
url: "/pages/orderconfirm/orderconfirm"
})
}
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
this.onLoad()
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
},
num() {
let num = 0;
let sel = 0;
for (let i in this.data.select) {
console.log(i)
if (this.data.select[i]) {
num += parseFloat(this.data.list[i].goods_price) * 100
sel++
}
}
if (sel == this.data.list.length && this.data.list.length != 0) {
this.setData({
all: true
})
} else {
this.setData({
all: false
})
}
this.setData({
price: num / 100
})
},
call() {
let sel = 0;
let select = []
for (let i in this.data.list) {
console.log(i)
if (this.data.select[i]) {
// num += parseFloat(this.data.list[i].goods_price)*100
sel++
} else {
select[i] = true
}
}
if (sel == this.data.list.length) {
request({
url: "Cart/updateAllSelect",
urldata: {
open_id: wx.getStorageSync("openid"),
selected: 0
}
}).then((res) => {
this.setData({
all: false,
select: []
})
this.num()
})
} else {
request({
url: "Cart/updateAllSelect",
urldata: {
open_id: wx.getStorageSync("openid"),
selected: 1
}
}).then((res) => {
this.setData({
all: true,
select
})
this.num()
})
}
},
calls() {
let sel = 0;
let select = []
for (let i in this.data.list) {
console.log(i)
select[i] = true
}
this.setData({
all: true,
select
})
this.num()
},
del() {
for (let i in this.data.list) {
// console.log(i)
if (this.data.select[i]) {
// num += parseFloat(this.data.list[i].goods_price)*100
// sel++
request({
url: "Cart/delCart",
urldata: {
id: this.data.list[i].id
}
}).then((res) => {
console.log('删除成功')
this.setData({
list: [],
select: [],
userid: 0,
price: "0.00"
})
this.onLoad()
})
}
}
}
})

View File

@@ -1,7 +1,7 @@
{
"usingComponents": {
"shopping-item":"/components/shopping/shoppingitem/shoppingitem"
}
{
"usingComponents": {
"shopping-item":"/components/shopping/shoppingitem/shoppingitem"
}
}

View File

@@ -1,25 +1,25 @@
<view class="shopping">
<view class="item" wx:for="{{list}}" wx:for-index="j" wx:key="{{j}}">
<shopping-item shopname="{{item.goods_name}}" shopdesc="{{item.spec_key_name||'默认规格'}}" price="{{item.goods_price}}" pic="{{item.image}}" num="{{item.goods_num}}" gid="{{item.id}}" index="{{j}}" select="{{select[j]}}" bindsel="sel"></shopping-item>
</view>
<!-- <view class="item">
<shopping-item shopname="J`adore - Dior" shopdesc="30支 1.30kg" price="61.78"></shopping-item>
</view>
<view class="item">
<shopping-item shopname="J`adore - Dior" shopdesc="30支 1.30kg" price="61.78"></shopping-item>
</view>
<view class="item">
<shopping-item shopname="J`adore - Dior" shopdesc="30支 1.30kg" price="61.78"></shopping-item>
</view> -->
<view class="bottom">
<view class="left">
<view bind:tap="call" class="select {{all ? 'selects':''}}"></view>
<text bind:tap="call" class="selectall">全选</text>
<text class="pri">${{price}}</text>
</view>
<view class="right">
<text class="del" bind:tap="del">删除</text>
<text class="sub" bindtap="sub">结算</text>
</view>
</view>
<view class="shopping">
<view class="item" wx:for="{{list}}" wx:for-index="j" wx:key="{{j}}">
<shopping-item shopname="{{item.goods_name}}" shopdesc="{{item.spec_key_name||'默认规格'}}" price="{{item.goods_price}}" pic="{{item.image}}" num="{{item.goods_num}}" gid="{{item.id}}" index="{{j}}" select="{{select[j]}}" bindsel="sel"></shopping-item>
</view>
<!-- <view class="item">
<shopping-item shopname="J`adore - Dior" shopdesc="30支 1.30kg" price="61.78"></shopping-item>
</view>
<view class="item">
<shopping-item shopname="J`adore - Dior" shopdesc="30支 1.30kg" price="61.78"></shopping-item>
</view>
<view class="item">
<shopping-item shopname="J`adore - Dior" shopdesc="30支 1.30kg" price="61.78"></shopping-item>
</view> -->
<view class="bottom">
<view class="left">
<view bind:tap="call" class="select {{all ? 'selects':''}}"></view>
<text bind:tap="call" class="selectall">全选</text>
<text class="pri">${{price}}</text>
</view>
<view class="right">
<text class="del" bind:tap="del">删除</text>
<text class="sub" bindtap="sub">结算</text>
</view>
</view>
</view>

View File

@@ -1,54 +1,54 @@
.shopping {
padding-bottom: 128rpx;
}
.item {
height: 186rpx;
margin-left: 46rpx;
margin-top: 59rpx;
}
.bottom {
width: 100%;
height: 98rpx;
position: fixed;
bottom: 0;
background: linear-gradient(2deg, rgba(250, 250, 250, 0.94), rgba(255, 255, 255, 0.94));
display: flex;
justify-content: space-between;
font-size: 28rpx;
line-height: 98rpx;
}
.left {
display: flex;
/* line-height: 26rpx; */
}
.select {
width: 26rpx;
height: 26rpx;
background: rgba(234, 234, 234, 1);
border-radius: 50%;
margin: auto 0;
margin-left: 46rpx;
margin-right: 24rpx;
}
.selects{
background-color: #4cc97d;
}
.pri {
color: #e0c79d;
font-size: 26rpx;
margin-left: 19rpx;
}
.right {
color: #bbbbbb;
margin-right: 31rpx;
}
.sub {
margin-left: 30rpx;
color: #4cc97d;
}
.shopping {
padding-bottom: 128rpx;
}
.item {
height: 186rpx;
margin-left: 46rpx;
margin-top: 59rpx;
}
.bottom {
width: 100%;
height: 98rpx;
position: fixed;
bottom: 0;
background: linear-gradient(2deg, rgba(250, 250, 250, 0.94), rgba(255, 255, 255, 0.94));
display: flex;
justify-content: space-between;
font-size: 28rpx;
line-height: 98rpx;
}
.left {
display: flex;
/* line-height: 26rpx; */
}
.select {
width: 26rpx;
height: 26rpx;
background: rgba(234, 234, 234, 1);
border-radius: 50%;
margin: auto 0;
margin-left: 46rpx;
margin-right: 24rpx;
}
.selects{
background-color: #4cc97d;
}
.pri {
color: #e0c79d;
font-size: 26rpx;
margin-left: 19rpx;
}
.right {
color: #bbbbbb;
margin-right: 31rpx;
}
.sub {
margin-left: 30rpx;
color: #4cc97d;
}

View File

@@ -1,11 +1,11 @@
.box {
.reference {
font-size: 24rpx;
color: #999;
padding: 32rpx 20rpx;
background-color: #fff;
}
}
page {
background-color: #fbfbfb;
}
.box {
.reference {
font-size: 24rpx;
color: #999;
padding: 32rpx 20rpx;
background-color: #fff;
}
}
page {
background-color: #fbfbfb;
}

View File

@@ -1,75 +1,75 @@
// pages/undetermined/undetermined.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function(options) {
},
chooseaddr() {
wx.navigateTo({
url: "/pages/chooseaddr/chooseaddr"
})
},
todetail() {
wx.navigateTo({
url: "/pages/product/product"
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function() {
}
// pages/undetermined/undetermined.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function(options) {
},
chooseaddr() {
wx.navigateTo({
url: "/pages/chooseaddr/chooseaddr"
})
},
todetail() {
wx.navigateTo({
url: "/pages/product/product"
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function() {
}
})

View File

@@ -1,6 +1,6 @@
page{
background-color: #FBFBFB;
}
.box{
page{
background-color: #FBFBFB;
}
.box{
}

View File

@@ -1,4 +1,4 @@
<view class="box">
<orderchooseaddr bindtap="chooseaddr"></orderchooseaddr>
<content bindtap="todetail"></content>
<view class="box">
<orderchooseaddr bindtap="chooseaddr"></orderchooseaddr>
<content bindtap="todetail"></content>
</view>

View File

@@ -1,66 +1,66 @@
// pages/yongjin/yongjin.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
// pages/yongjin/yongjin.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})

View File

@@ -1,7 +1,7 @@
{
"usingComponents": {
"yongjintop": "/components/yue/yongjintop/yongjintop",
"yuedetail": "/components/yue/yuedetail/yuedetail",
"yuetitle": "/components/yue/yuetitle/yuetitle"
}
{
"usingComponents": {
"yongjintop": "/components/yue/yongjintop/yongjintop",
"yuedetail": "/components/yue/yuedetail/yuedetail",
"yuetitle": "/components/yue/yuetitle/yuetitle"
}
}

View File

@@ -1,7 +1,7 @@
.detail {
margin-top: 41rpx;
}
.title {
margin-top: 40rpx
.detail {
margin-top: 41rpx;
}
.title {
margin-top: 40rpx
}

View File

@@ -1,18 +1,18 @@
<view class="yongjin">
<yongjintop></yongjintop>
<view class="title">
<yuetitle></yuetitle>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="yongjin">
<yongjintop></yongjintop>
<view class="title">
<yuetitle></yuetitle>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
</view>

View File

@@ -1,7 +1,7 @@
.detail {
margin-top: 41rpx;
}
.title {
margin-top: 40rpx;
}
.detail {
margin-top: 41rpx;
}
.title {
margin-top: 40rpx;
}

View File

@@ -1,23 +1,23 @@
// pages/yue/yue.js
Component({
/**
* 组件的属性列表
*/
properties: {
},
/**
* 组件的初始数据
*/
data: {
},
/**
* 组件的方法列表
*/
methods: {
}
})
// pages/yue/yue.js
Component({
/**
* 组件的属性列表
*/
properties: {
},
/**
* 组件的初始数据
*/
data: {
},
/**
* 组件的方法列表
*/
methods: {
}
})

View File

@@ -1,8 +1,8 @@
{
"component": true,
"usingComponents": {
"yuetop": "/components/yue/yuetop/yuetop",
"yuetitle": "/components/yue/yuetitle/yuetitle",
"yuedetail": "/components/yue/yuedetail/yuedetail"
}
{
"component": true,
"usingComponents": {
"yuetop": "/components/yue/yuetop/yuetop",
"yuetitle": "/components/yue/yuetitle/yuetitle",
"yuedetail": "/components/yue/yuedetail/yuedetail"
}
}

View File

@@ -1,8 +1,8 @@
.yue {
.title {
margin-top: 40rpx
}
.detail {
margin-top: 41rpx;
}
.yue {
.title {
margin-top: 40rpx
}
.detail {
margin-top: 41rpx;
}
}

View File

@@ -1,19 +1,19 @@
<view class="yue">
<yuetop></yuetop>
<view class="title">
<yuetitle></yuetitle>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="yue">
<yuetop></yuetop>
<view class="title">
<yuetitle></yuetitle>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
<view class="detail">
<yuedetail></yuedetail>
</view>
</view>

View File

@@ -1,7 +1,7 @@
.yue .title {
margin-top: 40rpx;
}
.yue .detail {
margin-top: 41rpx;
}
.yue .title {
margin-top: 40rpx;
}
.yue .detail {
margin-top: 41rpx;
}