Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mallapp
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
viitto
mallapp
Commits
a6040332
Commit
a6040332
authored
May 27, 2020
by
罗超
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/viitto/mallapp
# Conflicts: # pages/cart/cart.vue
parents
ba161133
29d5b80b
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
695 additions
and
485 deletions
+695
-485
App.vue
App.vue
+1
-1
pages.json
pages.json
+4
-4
AddAddress.vue
pages/address/AddAddress.vue
+4
-1
address.vue
pages/address/address.vue
+18
-5
cart.vue
pages/cart/cart.vue
+170
-134
favorite.vue
pages/favorite/favorite.vue
+17
-0
index.vue
pages/foot/index/index.vue
+28
-8
index.vue
pages/order/index/index.vue
+429
-325
user-center.vue
pages/user-center/user-center.vue
+24
-7
plugins-out.png
static/images/icon/plugins-out.png
+0
-0
No files found.
App.vue
View file @
a6040332
...
@@ -104,7 +104,7 @@ export default {
...
@@ -104,7 +104,7 @@ export default {
font-family
:
"oswald"
;
font-family
:
"oswald"
;
src
:
url("https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/smallapp/Oswald-Regular.ttf")
;
src
:
url("https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/smallapp/Oswald-Regular.ttf")
;
}
}
*
{
html
,
body
{
font-family
:
"oswald"
!
important
;
font-family
:
"oswald"
!
important
;
}
}
swiper
{
swiper
{
...
...
pages.json
View file @
a6040332
...
@@ -3,6 +3,10 @@
...
@@ -3,6 +3,10 @@
"^u-(.*)"
:
"uview-ui/components/u-$1/u-$1.vue"
"^u-(.*)"
:
"uview-ui/components/u-$1/u-$1.vue"
},
},
"pages"
:
[{
"pages"
:
[{
"path"
:
"pages/order/index/index"
},
{
"path"
:
"pages/index/index"
"path"
:
"pages/index/index"
},
},
{
{
...
@@ -49,10 +53,6 @@
...
@@ -49,10 +53,6 @@
},
},
{
{
"path"
:
"pages/order/index"
"path"
:
"pages/order/index"
},
{
"path"
:
"pages/order/index/index"
}
}
],
],
"globalStyle"
:
{
"globalStyle"
:
{
...
...
pages/address/AddAddress.vue
View file @
a6040332
...
@@ -53,6 +53,7 @@
...
@@ -53,6 +53,7 @@
export
default
{
export
default
{
data
(){
data
(){
return
{
return
{
pageTitle
:
'收货地址'
,
contentHeight
:
0
,
contentHeight
:
0
,
mainColor
:
''
,
mainColor
:
''
,
msg
:{
msg
:{
...
@@ -75,7 +76,9 @@
...
@@ -75,7 +76,9 @@
created
(){
created
(){
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
-
40
)
+
'px'
;
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
-
40
)
+
'px'
;
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
uni
.
setNavigationBarTitle
({
title
:
this
.
pageTitle
,
});
},
},
onLoad
:
function
(
option
)
{
//option为object类型,会序列化上个页面传递的参数
onLoad
:
function
(
option
)
{
//option为object类型,会序列化上个页面传递的参数
if
(
option
.
u
!=
undefined
){
if
(
option
.
u
!=
undefined
){
...
...
pages/address/address.vue
View file @
a6040332
...
@@ -70,6 +70,7 @@ import auth from "../../components/auth/index.vue";
...
@@ -70,6 +70,7 @@ import auth from "../../components/auth/index.vue";
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
pageTitle
:
'收货地址'
,
loading
:
true
,
loading
:
true
,
list
:
[],
list
:
[],
showAuth
:
false
,
showAuth
:
false
,
...
@@ -88,9 +89,23 @@ export default {
...
@@ -88,9 +89,23 @@ export default {
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
},
},
mounted
()
{
let
currentPages
=
getCurrentPages
();
let
u
=
"/"
+
currentPages
[
currentPages
.
length
-
1
].
route
;
let
pages
=
wx
.
getStorageSync
(
"basedata"
)
?
wx
.
getStorageSync
(
"basedata"
).
bar_title
:
[];
pages
.
forEach
((
x
)
=>
{
if
(
x
.
value
==
u
)
{
this
.
pageTitle
=
x
.
new_name
?
x
.
new_name
:
x
.
name
;
}
});
uni
.
setNavigationBarTitle
({
title
:
this
.
pageTitle
,
});
},
onLoad
()
{
onLoad
()
{
console
.
log
(
uni
.
getStorageSync
(
"basedata"
));
this
.
u
=
wx
.
getStorageSync
(
"userinfo"
);
this
.
u
=
uni
.
getStorageSync
(
"userinfo"
);
if
(
!
this
.
u
)
{
if
(
!
this
.
u
)
{
this
.
u
=
{
this
.
u
=
{
nickName
:
"未登录"
,
nickName
:
"未登录"
,
...
@@ -190,9 +205,7 @@ export default {
...
@@ -190,9 +205,7 @@ export default {
});
});
}
}
},
},
mounted
()
{
}
};
};
</
script
>
</
script
>
...
...
pages/cart/cart.vue
View file @
a6040332
<
template
>
<
template
>
<div
class=
"cartStyle"
v-if=
"!isloading"
>
<div
class=
"cartStyle"
v-if=
"!isloading"
:style=
"
{ height: contentHeight }"
>
<view
<view
style=
"
style=
"
display: flex;
display: flex;
...
@@ -26,143 +26,169 @@
...
@@ -26,143 +26,169 @@
mode=
"car"
mode=
"car"
></u-empty>
></u-empty>
<template
v-if=
"list.length > 0"
>
<view
<view
v-if=
"list.length > 0"
class=
"cartList"
style=
"
:style=
"
{ 'margin-bottom': listbottom }"
height: calc(100vh - 60px);
v-for="(c, i) in list"
width: calc(100vw);
:key="i"
overflow: hidden;
padding-top: 10px;
"
>
<scroll-view
:scroll-y=
"true"
:enable-back-to-top=
"true"
:enable-flex=
"true"
:style=
"
{ height: '100%' }"
>
>
<view
<template
v-if=
"list.length > 0"
>
style=
"
padding: 0 12px 12px 12px;
border-bottom: 1rpx solid #f5f5f5;
width: 100%;
"
>
<u-checkbox-group
@
change=
"mch_SelectAll(c.checked, i)"
>
<u-checkbox
v-model=
"c.checked"
shape=
"circle"
:active-color=
"mc"
>
{{
c
.
name
}}
</u-checkbox>
</u-checkbox-group>
</view>
<view
class=
"cartList_item"
v-for=
"(item, index) in c.goods_list"
:key=
"index"
:name=
"item.name"
>
<u-checkbox-group
v-if=
"item.new_status == 0 || editType == true"
@
change=
"clickcheckbox(item.checked, item.attrs.price, index, i)"
>
<u-checkbox
v-model=
"item.checked"
shape=
"circle"
:active-color=
"mc"
></u-checkbox>
</u-checkbox-group>
<Text
v-if=
"item.new_status != 0 && editType == false"
style=
"color: #a0a09d; width: 22px;"
>
失效
</Text
>
<image
:src=
"
item.attrs.pic_url ? item.attrs.pic_url : item.goods.cover_pic
"
mode=
"aspectFill"
style=
"
width: 150rpx;
height: 150rpx;
margin-left: 30rpx;
border-radius: 5px;
"
/>
<view
<view
style=
"
class=
"cartList"
display: flex;
:style=
"
{ 'margin-bottom': listbottom }"
flex-direction: column;
v-for="(c, i) in list"
justify-content: space-between;
:key="i"
width: 460rpx;
height: 150rpx;
margin-left: 20rpx;
"
>
>
<Text
style=
"
font-size: 28rpx;
width: 460rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
"
>
{{
item
.
goods
.
name
}}
</Text
>
<view
<view
style=
"
style=
"
width: 460rpx;
padding: 0 12px 12px 12px;
overflow: hidden;
border-bottom: 1rpx solid #f5f5f5;
white-space: nowrap;
width: 100%;
text-overflow: ellipsis;
"
"
>
>
<view
v-for=
"(attr, inde2x) in item.attrs.attr"
:key=
"inde2x"
>
<u-checkbox-group
@
change=
"mch_SelectAll(c.checked, i)"
>
<Text
<u-checkbox
style=
"color: #a0a09d; font-size: 24rpx; margin-right: 5rpx;"
v-model=
"c.checked"
>
{{
attr
.
attr_group_name
}}
:
{{
attr
.
attr_name
}}
</Text
shape=
"circle"
:active-color=
"mc"
>
{{
c
.
name
}}
</u-checkbox
>
>
</
view
>
</
u-checkbox-group
>
</view>
</view>
<view
<view
style=
"
class=
"cartList_item"
display: flex;
v-for=
"(item, index) in c.goods_list"
flex-direction: row;
:key=
"index"
align-items: center;
:name=
"item.name"
justify-content: space-between;
"
>
>
<Text
style=
"font-size: 30rpx;"
:style=
"
{ color: mc }"
<u-checkbox-group
>¥
<Text
style=
"40rpx"
>
{{
item
.
attrs
.
price
}}
</Text></Text
v-if=
"item.new_status == 0 || editType == true"
@
change=
"
clickcheckbox(item.checked, item.attrs.price, index, i)
"
>
>
<!--
<u-number-box
:value=
"item.num"
:min=
"1"
:max=
'100'
:input-width=
"100"
@
change=
"valChange(i,index, item.num,item.attrs.price,$event)"
></u-number-box>
-->
<u-checkbox
<view
class=
"item_input"
>
v-model=
"item.checked"
<view
shape=
"circle"
class=
"item_input_l"
:active-color=
"mc"
:style=
"
{
></u-checkbox>
color: item.num == 1 ? '#E2E2E2' : '#9B9B9B',
</u-checkbox-group>
}"
<Text
@click="reduce(i, index, item.attrs.price)"
v-if=
"item.new_status != 0 && editType == false"
>-
</view
style=
"color: #a0a09d; width: 22px;"
>
>
失效
</Text
<input
>
type=
"number"
<image
class=
"item_input_c"
:src=
"
:value=
"item.num"
item.attrs.pic_url ? item.attrs.pic_url : item.goods.cover_pic
@
blur=
"
"
inputblur(i, index, item.num, item.attrs.price, $event)
mode=
"aspectFill"
style=
"
width: 150rpx;
height: 150rpx;
margin-left: 30rpx;
border-radius: 5px;
"
/>
<view
style=
"
display: flex;
flex-direction: column;
justify-content: space-between;
width: 460rpx;
height: 150rpx;
margin-left: 20rpx;
"
>
<Text
style=
"
font-size: 28rpx;
width: 460rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
"
"
@
input=
"
>
{{
item
.
goods
.
name
}}
</Text
onKeyInput(i, index, item.num, item.attrs.price, $event)
>
<view
style=
"
width: 460rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
"
"
/>
>
<view
v-for=
"(attr, inde2x) in item.attrs.attr"
:key=
"inde2x"
>
<Text
style=
"
color: #a0a09d;
font-size: 24rpx;
margin-right: 5rpx;
"
>
{{
attr
.
attr_group_name
}}
:
{{
attr
.
attr_name
}}
</Text
>
</view>
</view>
<view
<view
class=
"item_input_r"
style=
"
style=
"color: #9b9b9b;"
display: flex;
@
click=
"plus(i, index, item.attrs.price)"
flex-direction: row;
>
+
</view
align-items: center;
justify-content: space-between;
"
>
>
<Text
style=
"font-size: 30rpx;"
:style=
"
{ color: mc }"
>¥
<Text
style=
"40rpx"
>
{{
item
.
attrs
.
price
}}
</Text></Text
>
<!--
<u-number-box
:value=
"item.num"
:min=
"1"
:max=
'100'
:input-width=
"100"
@
change=
"valChange(i,index, item.num,item.attrs.price,$event)"
></u-number-box>
-->
<view
class=
"item_input"
>
<view
class=
"item_input_l"
:style=
"
{
color: item.num == 1 ? '#E2E2E2' : '#9B9B9B',
}"
@click="reduce(i, index, item.attrs.price)"
>-
</view
>
<input
type=
"number"
class=
"item_input_c"
:value=
"item.num"
@
blur=
"
inputblur(i, index, item.num, item.attrs.price, $event)
"
@
input=
"
onKeyInput(i, index, item.num, item.attrs.price, $event)
"
/>
<view
class=
"item_input_r"
style=
"color: #9b9b9b;"
@
click=
"plus(i, index, item.attrs.price)"
>
+
</view
>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</
view
>
</
template
>
</view>
</
scroll-
view>
</
template
>
</
view
>
<view
class=
"box_bottom"
:style=
"{ 'margin-bottom': bottommargin }"
>
<view
class=
"box_bottom"
>
<div
style=
"margin-left: 30rpx;"
>
<div
style=
"margin-left: 30rpx;"
>
<u-checkbox-group
@
change=
"SelectAll"
>
<u-checkbox-group
@
change=
"SelectAll"
>
<u-checkbox
v-model=
"allchecked"
shape=
"circle"
active-color=
"red
"
<u-checkbox
v-model=
"allchecked"
shape=
"circle"
:active-color=
"mc
"
>
全选
</u-checkbox
>
全选
</u-checkbox
>
>
</u-checkbox-group>
</u-checkbox-group>
...
@@ -245,34 +271,33 @@ export default {
...
@@ -245,34 +271,33 @@ export default {
:
[];
:
[];
if
(
this
.
cstyle
.
cat_style
==
"4"
)
{
if
(
this
.
cstyle
.
cat_style
==
"4"
)
{
// this.searchStyle.p = {
// position: "fixed",
// top: this.navHeight,
// width: "100%",
// left: "0",
// };
}
}
},
},
mounted
()
{
mounted
()
{
let
currentPages
=
getCurrentPages
();
let
currentPages
=
getCurrentPages
();
let
c
=
this
.
$uiConfig
.
is_bang
?
80
:
52
;
let
c
=
this
.
$uiConfig
.
is_bang
?
80
:
52
;
this
.
bottommargin
=
c
-
2
+
"px"
;
this
.
bottommargin
=
c
-
2
+
"px"
;
this
.
listbottom
=
c
-
2
+
50
+
"px"
;
this
.
listbottom
=
c
+
44
+
"px"
;
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
c
)
;
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
c
-
42
)
+
"px"
;
let
u
=
"/"
+
currentPages
[
currentPages
.
length
-
1
].
route
;
let
u
=
"/"
+
currentPages
[
currentPages
.
length
-
1
].
route
;
let
pages
=
uni
.
getStorageSync
(
"basedata"
)
let
pages
=
wx
.
getStorageSync
(
"basedata"
)
?
uni
.
getStorageSync
(
"basedata"
).
bar_title
?
wx
.
getStorageSync
(
"basedata"
).
bar_title
:
[];
:
[];
pages
.
forEach
((
x
)
=>
{
pages
.
forEach
((
x
)
=>
{
if
(
x
.
value
==
u
)
{
if
(
x
.
value
==
u
)
{
this
.
pageTitle
=
x
.
new_name
?
x
.
new_name
:
x
.
name
;
this
.
pageTitle
=
x
.
new_name
?
x
.
new_name
:
x
.
name
;
}
}
});
});
uni
.
setNavigationBarTitle
({
title
:
this
.
pageTitle
,
});
this
.
init
();
this
.
init
();
},
},
methods
:
{
methods
:
{
goHome
()
{
goHome
()
{
uni
.
redirectTo
({
url
:
"/pages/index/main"
});
uni
.
redirectTo
({
url
:
"/pages/index/main"
,
});
},
},
init
()
{
init
()
{
uni
.
showNavigationBarLoading
();
uni
.
showNavigationBarLoading
();
...
@@ -552,18 +577,18 @@ export default {
...
@@ -552,18 +577,18 @@ export default {
if
(
this
.
checkCount
>
0
)
{
if
(
this
.
checkCount
>
0
)
{
let
forms
=
{
let
forms
=
{
list
:
[],
list
:
[],
address_id
:
0
,
address_id
:
0
,
};
};
this
.
list
.
forEach
((
y
)
=>
{
this
.
list
.
forEach
((
y
)
=>
{
let
good
=
{
let
good
=
{
mch_id
:
y
.
mch_id
,
mch_id
:
y
.
mch_id
,
goods_list
:
[],
goods_list
:
[],
distance
:
0
,
distance
:
0
,
remark
:
""
,
remark
:
""
,
order_form
:
[],
order_form
:
[],
use_integral
:
0
,
use_integral
:
0
,
user_coupon_id
:
0
,
user_coupon_id
:
0
,
}
}
;
y
.
goods_list
.
forEach
((
x
)
=>
{
y
.
goods_list
.
forEach
((
x
)
=>
{
if
(
x
.
checked
)
{
if
(
x
.
checked
)
{
let
g
=
{
let
g
=
{
...
@@ -579,10 +604,10 @@ export default {
...
@@ -579,10 +604,10 @@ export default {
attr_group_id
:
x
.
attr_group_id
,
attr_group_id
:
x
.
attr_group_id
,
});
});
});
});
good
.
goods_list
.
push
(
g
)
good
.
goods_list
.
push
(
g
)
;
}
}
});
});
forms
.
list
.
push
(
good
)
forms
.
list
.
push
(
good
)
;
});
});
uni
.
navigateTo
({
uni
.
navigateTo
({
url
:
url
:
...
@@ -608,18 +633,22 @@ export default {
...
@@ -608,18 +633,22 @@ export default {
position
:
relative
;
position
:
relative
;
font-family
:
"oswald"
;
font-family
:
"oswald"
;
}
}
.cartStyle
.u-checkbox__label
{
.cartStyle
.u-checkbox__label
{
margin-left
:
12px
;
margin-left
:
12px
;
}
}
.cartStyle
.grid-text
{
.cartStyle
.grid-text
{
font-size
:
24
rpx
;
font-size
:
24
rpx
;
margin-top
:
4
rpx
;
margin-top
:
4
rpx
;
color
:
#939393
;
color
:
#939393
;
}
}
.cartStyle
.grid-text_r
{
.cartStyle
.grid-text_r
{
margin-top
:
4
rpx
;
margin-top
:
4
rpx
;
margin-right
:
10
rpx
;
margin-right
:
10
rpx
;
}
}
.cartStyle
.cartList
{
.cartStyle
.cartList
{
width
:
100%
;
width
:
100%
;
display
:
flex
;
display
:
flex
;
...
@@ -627,6 +656,7 @@ export default {
...
@@ -627,6 +656,7 @@ export default {
align-items
:
center
;
align-items
:
center
;
overflow-y
:
hidden
;
overflow-y
:
hidden
;
}
}
.cartStyle
.cartList
.cartList_item
{
.cartStyle
.cartList
.cartList_item
{
width
:
100%
;
width
:
100%
;
padding
:
40
rpx
30
rpx
;
padding
:
40
rpx
30
rpx
;
...
@@ -635,6 +665,7 @@ export default {
...
@@ -635,6 +665,7 @@ export default {
align-items
:
center
;
align-items
:
center
;
border-bottom
:
1
rpx
solid
#f5f5f5
;
border-bottom
:
1
rpx
solid
#f5f5f5
;
}
}
.cartList
.cartList_item
.item_input
{
.cartList
.cartList_item
.item_input
{
width
:
200
rpx
;
width
:
200
rpx
;
height
:
60
rpx
;
height
:
60
rpx
;
...
@@ -644,6 +675,7 @@ export default {
...
@@ -644,6 +675,7 @@ export default {
align-items
:
center
;
align-items
:
center
;
justify-content
:
space-between
;
justify-content
:
space-between
;
}
}
.cartList
.item_input
.item_input_l
,
.cartList
.item_input
.item_input_l
,
.item_input_r
{
.item_input_r
{
width
:
50
rpx
;
width
:
50
rpx
;
...
@@ -653,16 +685,18 @@ export default {
...
@@ -653,16 +685,18 @@ export default {
align-items
:
center
;
align-items
:
center
;
justify-content
:
center
;
justify-content
:
center
;
}
}
.cartStyle
.item_input
.item_input_c
{
.cartStyle
.item_input
.item_input_c
{
text-align
:
center
;
text-align
:
center
;
width
:
50
rpx
;
width
:
50
rpx
;
height
:
60
rpx
;
height
:
60
rpx
;
font-size
:
20
rpx
;
font-size
:
20
rpx
;
}
}
.cartStyle
.box_bottom
{
.cartStyle
.box_bottom
{
width
:
100%
;
width
:
100%
;
height
:
50px
;
height
:
50px
;
position
:
fixed
;
position
:
absolute
;
background
:
#fff
;
background
:
#fff
;
left
:
0
;
left
:
0
;
bottom
:
0
;
bottom
:
0
;
...
@@ -673,6 +707,7 @@ export default {
...
@@ -673,6 +707,7 @@ export default {
border-top
:
1
rpx
solid
#f5f5f5
;
border-top
:
1
rpx
solid
#f5f5f5
;
z-index
:
999
;
z-index
:
999
;
}
}
.cartStyle
.bottom_btn
{
.cartStyle
.bottom_btn
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
...
@@ -680,6 +715,7 @@ export default {
...
@@ -680,6 +715,7 @@ export default {
width
:
250
rpx
;
width
:
250
rpx
;
height
:
50px
;
height
:
50px
;
}
}
.cartStyle
.Deletestyle
{
.cartStyle
.Deletestyle
{
margin-right
:
40
rpx
;
margin-right
:
40
rpx
;
}
}
...
...
pages/favorite/favorite.vue
View file @
a6040332
...
@@ -64,6 +64,7 @@
...
@@ -64,6 +64,7 @@
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
pageTitle
:
'我的收藏'
,
loading
:
true
,
loading
:
true
,
contentHeight
:
0
,
contentHeight
:
0
,
showAuth
:
false
,
showAuth
:
false
,
...
@@ -84,6 +85,21 @@
...
@@ -84,6 +85,21 @@
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
-
40
)
+
'px'
;
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
-
40
)
+
'px'
;
this
.
init
()
this
.
init
()
},
},
mounted
()
{
let
currentPages
=
getCurrentPages
();
let
u
=
"/"
+
currentPages
[
currentPages
.
length
-
1
].
route
;
let
pages
=
wx
.
getStorageSync
(
"basedata"
)
?
wx
.
getStorageSync
(
"basedata"
).
bar_title
:
[];
pages
.
forEach
((
x
)
=>
{
if
(
x
.
value
==
u
)
{
this
.
pageTitle
=
x
.
new_name
?
x
.
new_name
:
x
.
name
;
}
});
uni
.
setNavigationBarTitle
({
title
:
this
.
pageTitle
,
});
},
onLoad
(){
onLoad
(){
this
.
u
=
uni
.
getStorageSync
(
"userinfo"
);
this
.
u
=
uni
.
getStorageSync
(
"userinfo"
);
if
(
!
this
.
u
)
{
if
(
!
this
.
u
)
{
...
@@ -185,6 +201,7 @@
...
@@ -185,6 +201,7 @@
margin-bottom
:
3px
;
margin-bottom
:
3px
;
font-size
:
13px
;
font-size
:
13px
;
margin
:
7px
10px
;
margin
:
7px
10px
;
height
:
36px
;
}
}
.favoriteStyle
.u-good-list
.good
.good-info
{
.favoriteStyle
.u-good-list
.good
.good-info
{
display
:
flex
;
display
:
flex
;
...
...
pages/foot/index/index.vue
View file @
a6040332
...
@@ -29,7 +29,7 @@
...
@@ -29,7 +29,7 @@
</view>
</view>
<view
v-if=
"g.length > 0"
<view
v-if=
"g.length > 0"
style=
"
style=
"
height: calc(100vh -
4
0px);
height: calc(100vh -
5
0px);
width: calc(100vw);
width: calc(100vw);
overflow: hidden;
overflow: hidden;
padding-top: 10px;
padding-top: 10px;
...
@@ -47,6 +47,8 @@
...
@@ -47,6 +47,8 @@
<view
class=
"cBox_item"
v-for=
"(cx, ci) in item.goods"
:key=
"ci"
>
<view
class=
"cBox_item"
v-for=
"(cx, ci) in item.goods"
:key=
"ci"
>
<view
class=
"good-img"
@
click=
"clickHandler(cx.goods_id)"
>
<view
class=
"good-img"
@
click=
"clickHandler(cx.goods_id)"
>
<image
:src=
"cx.goodsWarehouse.cover_pic"
style=
"width: 100%; height: 100%;"
/>
<image
:src=
"cx.goodsWarehouse.cover_pic"
style=
"width: 100%; height: 100%;"
/>
<image
src=
"../../../static/images/icon/plugins-out.png"
v-if=
"item.goods_num==0"
style=
"width: 100%; height: 100%;position: absolute;left:0;top:0;background: #000;opacity: 0.6;"
/>
</view>
</view>
<view
class=
"good-info"
>
<view
class=
"good-info"
>
<Text
class=
'good-name'
@
click=
"clickHandler(cx.goods_id)"
>
{{
cx
.
goodsWarehouse
.
name
}}
</Text>
<Text
class=
'good-name'
@
click=
"clickHandler(cx.goods_id)"
>
{{
cx
.
goodsWarehouse
.
name
}}
</Text>
...
@@ -60,14 +62,15 @@
...
@@ -60,14 +62,15 @@
</view>
</view>
</view>
</view>
<u-divider
contentPosition=
"center"
v-if=
"isover"
:margin-top=
"20"
:margin-bottom=
"20"
bg-color=
'#f3f4f6'
>
没有更多足迹了
</u-divider>
</scroll-view>
</scroll-view>
<u-divider
contentPosition=
"center"
v-if=
"isover"
:margin-top=
"20"
:margin-bottom=
"20"
>
没有更多商品了
</u-divider>
</view>
</view>
<!--
<auth
v-if=
"showAuth"
@
changeuserinfo=
"reloadUserinfo"
></auth>
-->
<!--
<auth
v-if=
"showAuth"
@
changeuserinfo=
"reloadUserinfo"
></auth>
-->
<view
class=
"loading"
v-show=
"loading"
>
<view
class=
"loading"
v-show=
"loading"
>
...
@@ -128,6 +131,7 @@
...
@@ -128,6 +131,7 @@
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
pageTitle
:
"我的足迹"
,
isloading
:
true
,
isloading
:
true
,
loading
:
false
,
loading
:
false
,
loading2
:
false
,
loading2
:
false
,
...
@@ -165,6 +169,21 @@
...
@@ -165,6 +169,21 @@
this
.
fun_date
(
0
)
this
.
fun_date
(
0
)
},
},
mounted
()
{
let
currentPages
=
getCurrentPages
();
let
u
=
"/"
+
currentPages
[
currentPages
.
length
-
1
].
route
;
let
pages
=
wx
.
getStorageSync
(
"basedata"
)
?
wx
.
getStorageSync
(
"basedata"
).
bar_title
:
[];
pages
.
forEach
((
x
)
=>
{
if
(
x
.
value
==
u
)
{
this
.
pageTitle
=
x
.
new_name
?
x
.
new_name
:
x
.
name
;
}
});
uni
.
setNavigationBarTitle
({
title
:
this
.
pageTitle
,
});
},
onLoad
(){
onLoad
(){
this
.
u
=
uni
.
getStorageSync
(
"userinfo"
);
this
.
u
=
uni
.
getStorageSync
(
"userinfo"
);
if
(
!
this
.
u
)
{
if
(
!
this
.
u
)
{
...
@@ -404,6 +423,7 @@
...
@@ -404,6 +423,7 @@
}
}
.footStyle
.good-img
{
.footStyle
.good-img
{
position
:
relative
;
width
:
100%
;
width
:
100%
;
height
:
200
rpx
;
height
:
200
rpx
;
}
}
...
...
pages/order/index/index.vue
View file @
a6040332
<
template
>
<
template
>
<view
class=
"orderindexStyle"
:style=
"
{'height':contentHeight}">
<view
class=
"orderindexStyle"
:style=
"
{ height: contentHeight }">
<u-tabs
:list=
"list"
:is-scroll=
"false"
:current=
"current"
@
change=
"change"
:active-color=
'mainColor'
bg-color=
'#f3f4f6'
></u-tabs>
<u-tabs
<u-empty
v-if=
"g.length==0"
text=
"暂无相关订单"
mode=
"order"
></u-empty>
:list=
"list"
:is-scroll=
"false"
<view
v-if=
"g.length > 0"
:current=
"current"
style=
"
@
change=
"change"
height: calc(100vh - 50px);
:active-color=
"mainColor"
width: calc(100vw);
bg-color=
"#f3f4f6"
overflow: hidden;
></u-tabs>
padding-top: 10px;
<u-empty
v-if=
"g.length == 0"
text=
"暂无相关订单"
mode=
"order"
></u-empty>
"
>
<scroll-view
<view
:scroll-y=
"true"
v-if=
"g.length > 0"
:enable-back-to-top=
"true"
style=
"
:enable-flex=
"true"
height: calc(100vh - 50px);
@
scrolltolower=
"lower"
width: calc(100vw);
:style=
"
{ height: '100%' }">
overflow: hidden;
<view
class=
"orderList"
>
padding-top: 10px;
<view
class=
"listBox"
v-for=
"(item, index) in g"
:key=
"index"
>
"
<view
class=
"listBox_t"
>
>
<Text
>
订单号:
{{
item
.
order_no
}}
</Text>
<scroll-view
<Text>
{{
item
.
status_text
}}
</Text>
:scroll-y=
"true"
</view>
:enable-back-to-top=
"true"
<view
class=
"listBox_c"
>
:enable-flex=
"true"
<template
v-if=
"item.detail.length == 1"
>
@
scrolltolower=
"lower"
<view
v-for=
"(cx, ci) in item.detail"
:key=
"ci"
class=
"box_bottom"
>
:style=
"
{ height: '100%' }"
<image
:src=
"cx.goods_info.pic_url"
style=
"width: 75px; height: 75px"
/>
>
<view
style=
"width: calc(100% - 85px);height: 75px;display: flex;flex-direction: column;margin-left: 10px;justify-content: space-between;"
>
<view
class=
"orderList"
>
<Text
class=
'topic_cont_text'
>
{{
cx
.
goods_info
.
name
}}
</Text>
<view
class=
"listBox"
v-for=
"(item, index) in g"
:key=
"index"
>
<view
style=
'width: calc(100% - 85px);overflow: hidden;white-space: nowrap;text-overflow: ellipsis;'
>
<view
class=
"listBox_t"
>
<view
v-for=
"(attr, index2) in cx.goods_info.attr_list"
:key=
"index2"
>
<Text>
订单号:
{{
item
.
order_no
}}
</Text>
<Text
style=
'color: #A0A09D;font-size: 24rpx;margin-right: 5rpx;'
>
规格:
{{
attr
.
attr_name
}}
</Text>
<Text>
{{
item
.
status_text
}}
</Text>
</view>
</view>
</view>
<view
class=
"listBox_c"
>
<view
style=
"width: 100%;display: flex;flex-direction: row;align-items:center;justify-content: space-between;"
>
<template
v-if=
"item.detail.length == 1"
>
<Text
style=
'color: #A0A09D;font-size: 24rpx;'
>
X
{{
cx
.
num
}}
</Text>
<view
<Text
style=
'font-size: 24rpx;'
>
¥
{{
cx
.
total_price
}}
</Text>
v-for=
"(cx, ci) in item.detail"
</view>
:key=
"ci"
</view>
class=
"box_bottom"
</view>
>
</
template
>
<image
<
template
v-else
>
:src=
"cx.goods_info.pic_url"
<view
class=
"goodboxmore"
>
style=
"width: 75px; height: 75px;"
<view
class=
"good-list"
>
/>
<view
style=
"white-space: nowrap"
>
<view
<image
style=
"
v-for=
"(y, yi) in item.detail"
width: calc(100% - 85px);
:key=
"yi"
height: 75px;
:src=
"y.goods_info.pic_url"
display: flex;
mode=
"aspectFill"
flex-direction: column;
class=
"item"
margin-left: 10px;
/>
justify-content: space-between;
</view>
"
</view>
>
<view
class=
"infos"
>
<Text
class=
"topic_cont_text"
>
{{
<view
class=
"text"
>
共
{{
item
.
detail
.
length
}}
件
</view>
cx
.
goods_info
.
name
<u-icon
}}
</Text>
name=
"ellipsis"
<view
size=
"36"
style=
"
@
click=
"showGoodListHandler(index)"
width: calc(100% - 85px);
></u-icon>
overflow: hidden;
</view>
white-space: nowrap;
</view>
text-overflow: ellipsis;
</
template
>
"
<Text
style=
'font-size: 32rpx;text-align: right;width: 100%;'
>
¥{{item.total_price}}
</Text>
>
<view
<!-- TODO 样式结构修改-->
v-for=
"(attr, index2) in cx.goods_info.attr_list"
<view
class=
"handle"
>
:key=
"index2"
<view
class=
"handle_item"
@
click=
"cancel(item,index)"
>
>
<Text>
取消
</Text>
<Text
</view>
style=
"
<view
class=
"handle_item"
>
color: #a0a09d;
<Text>
付款
</Text>
font-size: 24rpx;
</view>
margin-right: 5rpx;
</view>
"
</view>
>
规格:
{{
attr
.
attr_name
}}
</Text
</view>
>
</view>
</view>
</view>
<view
</scroll-view>
style=
"
width: 100%;
</view>
display: flex;
<!-- 加载中 -->
flex-direction: row;
<view
class=
"loading"
v-if=
"loading"
>
align-items: center;
<u-loading
mode=
"flower"
size=
"48"
>
>
</u-loading>
justify-content: space-between;
<Text
style=
'color: #fff;margin-top: 10rpx;'
>
加载中...
</Text>
"
</view>
>
<!-- 取消提示 -->
<Text
style=
"color: #a0a09d; font-size: 24rpx;"
<u-modal
>
X
{{
cx
.
num
}}
</Text
v-model=
"showModal"
>
content=
"是否取消订单?"
<Text
style=
"font-size: 24rpx;"
:show-cancel-button=
"true"
>
¥
{{
cx
.
total_price
}}
</Text
:show-title=
"false"
>
@
confirm=
"confirm"
</view>
></u-modal>
</view>
<u-toast
ref=
"uToast"
/>
</view>
<good-list
:list=
"goodData"
v-if=
"showGoodList"
@
close=
"closeGoodListHandler"
></good-list>
</
template
>
<
template
v-else
>
</view>
<view
class=
"goodboxmore"
>
<view
class=
"good-list"
>
<view
style=
"white-space: nowrap;"
>
<image
v-for=
"(y, yi) in item.detail"
:key=
"yi"
:src=
"y.goods_info.pic_url"
mode=
"aspectFill"
class=
"item"
/>
</view>
</view>
<view
class=
"infos"
>
<view
class=
"text"
>
共
{{
item
.
detail
.
length
}}
件
</view>
<u-icon
name=
"ellipsis"
size=
"36"
@
click=
"showGoodListHandler(index)"
></u-icon>
</view>
</view>
</
template
>
<Text
style=
"font-size: 32rpx; text-align: right; width: 100%;"
>
合计:¥{{ item.total_price }}
<Text
v-if=
"item.express_price != 0"
style=
"font-size: 20rpx; color: #a0a09d;"
>
(含运费 ¥{{ item.express_price }})
</Text
>
</Text>
<!-- TODO 样式结构修改-->
<view
class=
"handle"
>
<view
class=
"handle_item"
@
click=
"cancel(item, index)"
>
<Text>
取消
</Text>
</view>
<view
class=
"handle_item"
>
<Text>
付款
</Text>
</view>
</view>
</view>
</view>
</view>
<u-divider
contentPosition=
"center"
v-if=
"isover"
:margin-top=
"20"
:margin-bottom=
"20"
bg-color=
"#f3f4f6"
>
没有更多订单了
</u-divider
>
</scroll-view>
</view>
<!-- 加载中 -->
<view
class=
"loading"
v-if=
"loading"
>
<u-loading
mode=
"flower"
size=
"48"
>
>
</u-loading>
<Text
style=
"color: #fff; margin-top: 10rpx;"
>
加载中...
</Text>
</view>
<!-- 取消提示 -->
<u-modal
v-model=
"showModal"
content=
"是否取消订单?"
:show-cancel-button=
"true"
:show-title=
"false"
@
confirm=
"confirm"
></u-modal>
<u-toast
ref=
"uToast"
/>
<good-list
:list=
"goodData"
v-if=
"showGoodList"
@
close=
"closeGoodListHandler"
></good-list>
</view>
</template>
</template>
<
script
>
<
script
>
import
goodList
from
'@/components/goods/order-good-list2'
import
goodList
from
"@/components/goods/order-good-list2"
;
export
default
{
export
default
{
components
:{
components
:
{
goodList
goodList
,
},
},
data
()
{
data
()
{
return
{
return
{
current
:
0
,
pageTitle
:
"我的订单"
,
list
:
[{
name
:
'全部'
},
{
name
:
'待付款'
},{
name
:
'待发货'
},{
name
:
'待收货'
},{
name
:
'待评价'
},],
current
:
0
,
mainColor
:
""
,
list
:
[
contentHeight
:
0
,
{
name
:
"全部"
},
page
:
1
,
{
name
:
"待付款"
},
page_count
:
0
,
{
name
:
"待发货"
},
g
:[],
{
name
:
"待收货"
},
loading
:
false
,
{
name
:
"待评价"
},
showModal
:
false
,
{
name
:
"已完成"
},
item
:
''
,
{
name
:
"已取消"
}
index
:
0
,
],
goodData
:[],
mainColor
:
""
,
showGoodList
:
false
,
contentHeight
:
0
,
};
page
:
1
,
},
page_count
:
1
,
created
(){
g
:
[],
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
-
40
)
+
'px'
;
loading
:
false
,
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
showModal
:
false
,
item
:
""
,
},
index
:
0
,
onLoad
:
function
(
option
)
{
//option为object类型,会序列化上个页面传递的参数
goodData
:
[],
this
.
current
=
option
.
status
;
showGoodList
:
false
,
this
.
loading
=
true
;
isover
:
false
,
this
.
init
()
};
},
},
methods
:
{
created
()
{
change
(
index
){
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
-
40
)
+
"px"
;
this
.
current
=
index
;
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
this
.
page
=
1
;
},
this
.
g
=
[];
mounted
()
{
this
.
loading
=
true
;
let
currentPages
=
getCurrentPages
();
this
.
init
()
let
u
=
"/"
+
currentPages
[
currentPages
.
length
-
1
].
route
;
},
let
pages
=
wx
.
getStorageSync
(
"basedata"
)
init
(){
?
wx
.
getStorageSync
(
"basedata"
).
bar_title
:
[];
let
h
=
this
.
apiheader
()
pages
.
forEach
((
x
)
=>
{
if
(
x
.
value
==
u
)
{
this
.
request
(
this
.
pageTitle
=
x
.
new_name
?
x
.
new_name
:
x
.
name
;
{
}
url
:
""
,
});
header
:
h
,
uni
.
setNavigationBarTitle
({
data
:
{
title
:
this
.
pageTitle
,
r
:
"api/order/list"
,
});
status
:
this
.
current
,
},
page
:
this
.
page
,
onLoad
:
function
(
option
)
{
//option为object类型,会序列化上个页面传递的参数
}
this
.
current
=
option
.
status
;
},
this
.
loading
=
true
;
res
=>
{
this
.
init
();
this
.
loading
=
false
;
},
this
.
g
=
res
.
data
.
list
;
methods
:
{
}
change
(
index
)
{
);
this
.
current
=
index
;
this
.
page
=
1
;
},
this
.
g
=
[];
cancel
(
e
,
index
){
this
.
loading
=
true
;
this
.
showModal
=
true
;
this
.
init
();
this
.
index
=
index
;
},
this
.
item
=
e
;
init
()
{
},
this
.
isover
=
false
;
confirm
(){
let
h
=
this
.
apiheader
();
this
.
showModal
=
false
this
.
request
(
let
h
=
this
.
apiheader
();
{
// h['content-type']='application/x-www-form-urlencoded'
url
:
""
,
this
.
request
(
header
:
h
,
{
data
:
{
url
:
""
,
r
:
"api/order/list"
,
// method: "POST",
status
:
this
.
current
,
header
:
h
,
page
:
this
.
page
,
data
:
{
},
r
:
"api/order/cancel"
,
},
id
:
this
.
item
.
id
(
res
)
=>
{
}
this
.
loading
=
false
;
},
this
.
g
=
this
.
g
.
concat
(
res
.
data
.
list
);
this
.
page_count
=
res
.
data
.
pagination
.
page_count
;
res
=>
{
if
(
this
.
page_count
==
1
)
{
this
.
$refs
.
uToast
.
show
({
title
:
res
.
msg
,})
this
.
isover
=
true
;
this
.
g
.
splice
(
this
.
index
,
1
)
}
}
}
);
);
},
},
lower
(
e
)
{
closeGoodListHandler
(){
if
(
this
.
page
<
this
.
page_count
)
{
this
.
goodData
=
[]
this
.
page
++
;
this
.
showGoodList
=
false
this
.
init
();
},
}
else
{
showGoodListHandler
(
i
){
this
.
isover
=
true
;
this
.
goodData
=
this
.
g
[
i
].
detail
}
console
.
log
(
this
.
goodData
)
},
this
.
showGoodList
=
true
cancel
(
e
,
index
)
{
},
this
.
showModal
=
true
;
}
this
.
index
=
index
;
};
this
.
item
=
e
;
},
confirm
()
{
this
.
showModal
=
false
;
let
h
=
this
.
apiheader
();
// h['content-type']='application/x-www-form-urlencoded'
this
.
request
(
{
url
:
""
,
// method: "POST",
header
:
h
,
data
:
{
r
:
"api/order/cancel"
,
id
:
this
.
item
.
id
,
},
},
(
res
)
=>
{
this
.
$refs
.
uToast
.
show
({
title
:
res
.
msg
});
this
.
g
.
splice
(
this
.
index
,
1
);
}
);
},
closeGoodListHandler
()
{
this
.
goodData
=
[];
this
.
showGoodList
=
false
;
},
showGoodListHandler
(
i
)
{
this
.
goodData
=
this
.
g
[
i
].
detail
;
console
.
log
(
this
.
goodData
);
this
.
showGoodList
=
true
;
},
},
};
</
script
>
</
script
>
<
style
>
<
style
>
.orderindexStyle
{
.orderindexStyle
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
background
:
#f3f4f6
;
background
:
#f3f4f6
;
}
}
.orderindexStyle
.orderList
{
.orderindexStyle
.orderList
{
width
:
100%
;
width
:
100%
;
display
:
flex
;
display
:
flex
;
flex-direction
:
column
;
flex-direction
:
column
;
align-items
:
center
;
align-items
:
center
;
}
}
.orderList
.listBox
{
.orderList
.listBox
{
width
:
94%
;
width
:
94%
;
background
:
#fff
;
background
:
#fff
;
border-radius
:
10
rpx
;
border-radius
:
10
rpx
;
display
:
flex
;
display
:
flex
;
flex-direction
:
column
;
flex-direction
:
column
;
align-items
:
center
;
align-items
:
center
;
padding
:
20
rpx
;
padding
:
20
rpx
;
margin-bottom
:
30
rpx
;
margin-bottom
:
30
rpx
;
}
}
.orderList
.listBox
.listBox_t
{
.orderList
.listBox
.listBox_t
{
width
:
100%
;
width
:
100%
;
display
:
flex
;
display
:
flex
;
flex-direction
:
row
;
flex-direction
:
row
;
align-items
:
center
;
align-items
:
center
;
justify-content
:
space-between
;
justify-content
:
space-between
;
font-size
:
24
rpx
;
font-size
:
24
rpx
;
margin
:
10
rpx
0
;
margin
:
10
rpx
0
;
}
}
.orderList
.listBox
.listBox_c
{
.orderList
.listBox
.listBox_c
{
width
:
100%
;
width
:
100%
;
display
:
flex
;
display
:
flex
;
flex-direction
:
column
;
flex-direction
:
column
;
align-items
:
center
;
align-items
:
center
;
}
}
.orderList
.listBox
.box_bottom
{
.orderList
.listBox
.box_bottom
{
display
:
flex
;
display
:
flex
;
flex-direction
:
row
;
flex-direction
:
row
;
align-items
:
center
;
align-items
:
center
;
width
:
100%
;
width
:
100%
;
margin-bottom
:
18
rpx
;
margin-bottom
:
18
rpx
;
}
}
.orderList
.handle
{
.orderList
.handle
{
width
:
100%
;
width
:
100%
;
display
:
flex
;
display
:
flex
;
flex-direction
:
row
;
flex-direction
:
row
;
align-items
:
center
;
align-items
:
center
;
justify-content
:
flex-end
;
justify-content
:
flex-end
;
margin-top
:
10
rpx
;
margin-top
:
10
rpx
;
}
}
.orderList
.handle_item
{
.orderList
.handle_item
{
padding
:
0
24
rpx
;
padding
:
0
24
rpx
;
border
:
1px
solid
#c8c9cc
;
border
:
1px
solid
#c8c9cc
;
margin-left
:
20
rpx
;
margin-left
:
20
rpx
;
height
:
50
rpx
;
height
:
50
rpx
;
border-radius
:
25
rpx
;
border-radius
:
25
rpx
;
line-height
:
50
rpx
;
line-height
:
50
rpx
;
}
}
.orderindexStyle
.loading
{
.orderindexStyle
.loading
{
width
:
200
rpx
;
width
:
200
rpx
;
height
:
200
rpx
;
height
:
200
rpx
;
background
:
#000000
;
background
:
#000000
;
opacity
:
0.7
;
opacity
:
0.7
;
border-radius
:
10
rpx
;
border-radius
:
10
rpx
;
display
:
flex
;
display
:
flex
;
flex-direction
:
column
;
flex-direction
:
column
;
align-items
:
center
;
align-items
:
center
;
justify-content
:
center
;
justify-content
:
center
;
position
:
fixed
;
position
:
fixed
;
left
:
50%
;
left
:
50%
;
top
:
30%
;
top
:
30%
;
margin-left
:
-100
rpx
;
margin-left
:
-100
rpx
;
z-index
:
999
;
z-index
:
999
;
}
}
.listBox_c
.goodboxmore
{
.listBox_c
.goodboxmore
{
margin-bottom
:
20px
;
margin-bottom
:
20px
;
display
:
flex
;
display
:
flex
;
width
:
100%
;
width
:
100%
;
}
}
.listBox_c
.goodboxmore
.good-list
{
.listBox_c
.goodboxmore
.good-list
{
display
:
flex
;
display
:
flex
;
flex
:
1
;
flex
:
1
;
overflow-x
:
auto
;
overflow-x
:
auto
;
}
}
.listBox_c
.goodboxmore
.good-list
.item
{
.listBox_c
.goodboxmore
.good-list
.item
{
width
:
70px
;
width
:
70px
;
height
:
70px
;
height
:
70px
;
border-radius
:
5px
;
border-radius
:
5px
;
margin-right
:
10px
;
margin-right
:
10px
;
}
}
.listBox_c
.goodboxmore
.infos
{
.listBox_c
.goodboxmore
.infos
{
display
:
flex
;
display
:
flex
;
width
:
80px
;
width
:
80px
;
}
}
.listBox_c
.goodboxmore
.infos
.text
{
.listBox_c
.goodboxmore
.infos
.text
{
text-align
:
center
;
text-align
:
center
;
font-size
:
13px
;
font-size
:
13px
;
width
:
57px
;
width
:
57px
;
margin-right
:
5px
;
margin-right
:
5px
;
line-height
:
70px
;
line-height
:
70px
;
}
}
.listBox_c
.left
{
.listBox_c
.left
{
flex
:
1
;
flex
:
1
;
color
:
#232323
;
color
:
#232323
;
font-size
:
16px
;
font-size
:
16px
;
flex
:
1
;
flex
:
1
;
font-family
:
"oswald"
;
font-family
:
"oswald"
;
}
}
.listBox_c
.small
{
.listBox_c
.small
{
font-size
:
13px
;
font-size
:
13px
;
}
}
.listBox_c
.topic_cont_text
{
.listBox_c
.topic_cont_text
{
font-size
:
26
rpx
;
font-size
:
26
rpx
;
max-height
:
70
rpx
;
max-height
:
70
rpx
;
overflow
:
hidden
;
overflow
:
hidden
;
word-break
:
break-all
;
/* break-all(允许在单词内换行。) */
word-break
:
break-all
;
/* break-all(允许在单词内换行。) */
text-overflow
:
ellipsis
;
/* 超出部分省略号 */
text-overflow
:
ellipsis
;
/* 超出部分省略号 */
display
:
-webkit-box
;
/** 对象作为伸缩盒子模型显示 **/
display
:
-webkit-box
;
/** 对象作为伸缩盒子模型显示 **/
-webkit-box-orient
:
vertical
;
/** 设置或检索伸缩盒对象的子元素的排列方式 **/
-webkit-box-orient
:
vertical
;
/** 设置或检索伸缩盒对象的子元素的排列方式 **/
-webkit-line-clamp
:
2
;
/** 显示的行数 **/
-webkit-line-clamp
:
2
;
/** 显示的行数 **/
}
}
</
style
>
</
style
>
\ No newline at end of file
pages/user-center/user-center.vue
View file @
a6040332
...
@@ -77,6 +77,7 @@
...
@@ -77,6 +77,7 @@
:name=
"item.name"
@
click=
"goUrl(item.link_url)"
>
:name=
"item.name"
@
click=
"goUrl(item.link_url)"
>
<image
:src=
'item.icon_url'
style=
"width: 66rpx;height: 60rpx;"
></image>
<image
:src=
'item.icon_url'
style=
"width: 66rpx;height: 60rpx;"
></image>
<Text
style=
'margin-top: 10rpx;'
>
{{
item
.
name
}}
</Text>
<Text
style=
'margin-top: 10rpx;'
>
{{
item
.
name
}}
</Text>
<view
v-if=
'item.num>0'
class=
'badge'
:style=
"
{'background':mainColor}">
{{
item
.
num
}}
</view>
</view>
</view>
</view>
</view>
</view>
</view>
...
@@ -87,7 +88,7 @@
...
@@ -87,7 +88,7 @@
<image
:src=
'item.icon_url'
style=
"width: 48rpx;height: 48rpx;"
></image>
<image
:src=
'item.icon_url'
style=
"width: 48rpx;height: 48rpx;"
></image>
<Text
:style=
"
{'margin-top':meueData.user_center.menu_style == 1 ? '0rpx':'10rpx','margin-left':meueData.user_center.menu_style == 1 ? '10rpx':'0rpx'}">
<Text
:style=
"
{'margin-top':meueData.user_center.menu_style == 1 ? '0rpx':'10rpx','margin-left':meueData.user_center.menu_style == 1 ? '10rpx':'0rpx'}">
{{
item
.
name
}}
{{
item
.
name
}}
</Text>
</Text>
</view>
</view>
</view>
</view>
<view
class=
"copyright"
>
<view
class=
"copyright"
>
...
@@ -133,7 +134,7 @@
...
@@ -133,7 +134,7 @@
},
},
onLoad
()
{
onLoad
()
{
this
.
navHeight
=
this
.
$navHeight
-
2
;
this
.
navHeight
=
this
.
$navHeight
-
2
;
this
.
u
=
uni
.
getStorageSync
(
"userinfo"
);
this
.
u
=
wx
.
getStorageSync
(
"userinfo"
);
if
(
!
this
.
u
)
{
if
(
!
this
.
u
)
{
this
.
u
=
{
this
.
u
=
{
nickName
:
"未登录"
,
nickName
:
"未登录"
,
...
@@ -141,10 +142,10 @@
...
@@ -141,10 +142,10 @@
};
};
this
.
showAuth
=
true
;
this
.
showAuth
=
true
;
}
}
this
.
cstyle
=
uni
.
getStorageSync
(
"basedata"
)
this
.
cstyle
=
uni
.
getStorageSync
(
"basedata"
)
?
uni
.
getStorageSync
(
"basedata"
).
cat_style
?
uni
.
getStorageSync
(
"basedata"
).
cat_style
:
[];
:
[];
if
(
this
.
cstyle
.
cat_style
==
"4"
)
{
if
(
this
.
cstyle
.
cat_style
==
"4"
)
{
}
}
...
@@ -157,16 +158,18 @@
...
@@ -157,16 +158,18 @@
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
c
);
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
c
);
let
u
=
"/"
+
currentPages
[
currentPages
.
length
-
1
].
route
;
let
u
=
"/"
+
currentPages
[
currentPages
.
length
-
1
].
route
;
let
pages
=
wx
.
getStorageSync
(
"basedata"
)
let
pages
=
uni
.
getStorageSync
(
"basedata"
)
?
wx
.
getStorageSync
(
"basedata"
).
bar_title
?
uni
.
getStorageSync
(
"basedata"
).
bar_title
:
[];
:
[];
console
.
log
(
uni
.
getStorageSync
(
"basedata"
))
console
.
log
(
wx
.
getStorageSync
(
"basedata"
))
pages
.
forEach
((
x
)
=>
{
pages
.
forEach
((
x
)
=>
{
if
(
x
.
value
==
u
)
{
if
(
x
.
value
==
u
)
{
this
.
pageTitle
=
x
.
new_name
?
x
.
new_name
:
x
.
name
;
this
.
pageTitle
=
x
.
new_name
?
x
.
new_name
:
x
.
name
;
}
}
});
});
uni
.
setNavigationBarTitle
({
title
:
this
.
pageTitle
,
});
this
.
userinfo
()
this
.
userinfo
()
this
.
getmeue
()
this
.
getmeue
()
...
@@ -324,6 +327,20 @@
...
@@ -324,6 +327,20 @@
flex-direction
:
column
;
flex-direction
:
column
;
align-items
:
center
;
align-items
:
center
;
margin-top
:
20
rpx
;
margin-top
:
20
rpx
;
position
:
relative
}
.userStyle
.badge
{
position
:
absolute
;
right
:
-10
rpx
;
top
:
-10
rpx
;
padding
:
0
7
rpx
;
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
font-size
:
20
rpx
;
color
:
#fff
;
height
:
30
rpx
;
border-radius
:
15
rpx
;
}
}
.userStyle
.menus
{
.userStyle
.menus
{
width
:
94%
;
width
:
94%
;
...
...
static/images/icon/plugins-out.png
0 → 100644
View file @
a6040332
13.9 KB
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment