Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
jinli gu
Litemall
Commits
8f2890f8
Commit
8f2890f8
authored
Apr 20, 2019
by
Junling Bu
Browse files
chore[litemall-vue]: 删除客服组件
parent
76269132
Changes
5
Hide whitespace changes
Inline
Side-by-side
litemall-vue/src/assets/images/qc_code.png
deleted
100755 → 0
View file @
76269132
43.4 KB
litemall-vue/src/views/items/detail/index.vue
View file @
8f2890f8
<
template
>
<
template
>
<div
class=
"item_detail"
>
<div
class=
"item_detail"
>
<van-swipe
:autoplay=
"3000"
>
<van-swipe
:autoplay=
"3000"
>
<van-swipe-item
v-for=
"(image, index) in itemImgs"
:key=
"index"
>
<van-swipe-item
v-for=
"(image, index) in itemImgs"
:key=
"index"
>
<!--
<img
v-lazy=
"image"
width=
"100%"
>
-->
<!--
<img
v-lazy=
"image"
width=
"100%"
>
-->
<img
:src=
"image"
width=
"100%"
>
<img
:src=
"image"
width=
"100%"
>
</van-swipe-item>
</van-swipe-item>
</van-swipe>
</van-swipe>
<van-cell-group
class=
"item_cell_group"
v-if=
"goods"
>
<van-cell-group
class=
"item_cell_group"
v-if=
"goods"
>
<van-cell
class=
"item_info"
>
<van-cell
class=
"item_info"
>
<div>
<div>
<span
class=
"item_price"
>
{{
goods
.
retailPrice
*
100
|
yuan
}}
</span>
<span
class=
"item_price"
>
{{
goods
.
retailPrice
*
100
|
yuan
}}
</span>
<span
class=
"item_market_price"
>
{{
goods
.
counterPrice
*
100
|
yuan
}}
</span>
<span
class=
"item_market_price"
>
{{
goods
.
counterPrice
*
100
|
yuan
}}
</span>
</div>
</div>
<div
class=
"item-title"
>
<div
class=
"item-title"
>
<!--
<van-tag
plain
type=
"danger"
v-if=
"goods.is_haitao"
>
海淘
</van-tag>
-->
<!--
<van-tag
plain
type=
"danger"
v-if=
"goods.is_haitao"
>
海淘
</van-tag>
-->
{{
goods
.
name
}}
{{
goods
.
name
}}
</div>
</div>
<!--
<div
class=
"item_intro"
>
{{
goods
.
sell_point
}}
</div>
???-->
<!--
<div
class=
"item_intro"
>
{{
goods
.
sell_point
}}
</div>
???-->
<!--
<div
class=
"item_dispatch"
>
发货地:
{{}}
</div>
-->
<!--
<div
class=
"item_dispatch"
>
发货地:
{{}}
</div>
-->
</van-cell>
</van-cell>
</van-cell-group>
</van-cell-group>
<component
<component
v-if=
"goods"
v-if=
"goods"
ref=
"goodAction"
ref=
"goodAction"
v-bind:is=
"'entity-group'"
v-bind:is=
"'entity-group'"
:selectSku.sync=
"selectSku"
:selectSku.sync=
"selectSku"
:addressVal.sync=
"addressVal"
:addressVal.sync=
"addressVal"
:mobile=
"mobile"
:mobile=
"mobile"
:goods-info=
"goods"
:goods-info=
"goods"
@
skuBuy=
"doBuyNow"
@
skuBuy=
"doBuyNow"
@
cart-count=
"cartEvent"
@
cart-count=
"cartEvent"
/>
/>
<div
class=
"item_desc"
v-if=
"goods"
>
<div
class=
"item_desc"
v-if=
"goods"
>
<div
class=
"item_desc_title"
>
商品详情
</div>
<div
class=
"item_desc_title"
>
商品详情
</div>
<div
class=
"item_desc_wrap"
v-if=
"goods.detail.length === 0"
style=
"padding-left: 170px;"
>
<div
class=
"item_desc_wrap"
v-if=
"goods.detail.length === 0"
style=
"padding-left: 170px;"
>
<p>
无详情
</p>
<p>
无详情
</p>
</div>
</div>
<div
class=
"item_desc_wrap"
v-html=
"goods.detail"
></div>
<div
class=
"item_desc_wrap"
v-html=
"goods.detail"
></div>
</div>
</div>
<van-goods-action>
<van-goods-action>
<!--
<van-goods-action-mini-btn
@
click=
"doContact"
icon=
"wangwang"
iconClass=
"red afterTag"
/>
-->
<van-goods-action-mini-btn
@
click=
"toCart"
icon=
"cart"
:info=
"cartInfo"
/>
<van-goods-action-mini-btn
@
click=
"toCart"
icon=
"cart"
:info=
"cartInfo"
/>
<van-goods-action-mini-btn
<van-goods-action-mini-btn
:style=
"collectAdd ? 'color: #f7b444;':''"
:style=
"collectAdd ? 'color: #f7b444;':''"
@
click=
"addCollect"
@
click=
"addCollect"
icon=
"shoucang"
icon=
"shoucang"
/>
/>
<van-goods-action-big-btn
@
click=
"openSku('cart')"
text=
"加入购物车"
/>
<van-goods-action-big-btn
@
click=
"openSku('cart')"
text=
"加入购物车"
/>
<van-goods-action-big-btn
primary
@
click=
"openSku('buy')"
text=
"立即购买"
/>
<van-goods-action-big-btn
primary
@
click=
"openSku('buy')"
text=
"立即购买"
/>
</van-goods-action>
</van-goods-action>
</div>
<van-popup
v-model=
"showContact"
>
</
template
>
<md-kefu
mobile=
"16454193338"
/>
</van-popup>
<
script
>
</div>
import
{
GOODS_DETAIL
}
from
'
@/api/goods
'
;
</
template
>
import
{
<
script
>
Swipe
,
import
{
GOODS_DETAIL
}
from
'
@/api/goods
'
;
SwipeItem
,
GoodsAction
,
import
{
GoodsActionBigBtn
,
Swipe
,
GoodsActionMiniBtn
,
SwipeItem
,
Popup
GoodsAction
,
}
from
'
vant
'
;
GoodsActionBigBtn
,
GoodsActionMiniBtn
,
export
default
{
Popup
props
:
{
}
from
'
vant
'
;
itemId
:
[
String
,
Number
]
},
import
md_kefu
from
'
@/vue/components/md-kefu/
'
;
data
()
{
export
default
{
const
isLogin
=
!!
localStorage
.
getItem
(
'
Authorization
'
);
props
:
{
return
{
itemId
:
[
String
,
Number
]
isLogin
,
},
itemImgs
:
[],
collectAdd
:
false
,
data
()
{
cartInfo
:
'
0
'
,
const
isLogin
=
!!
localStorage
.
getItem
(
'
Authorization
'
);
selectSku
:
{
return
{
selectedNum
:
1
,
isLogin
,
selectedSkuComb
:
{}
itemImgs
:
[],
},
collectAdd
:
false
,
addressVal
:
{
showContact
:
false
,
id
:
null
,
cartInfo
:
'
0
'
,
area_name
:
''
,
mobile
:
'
13454193338
'
,
district
:
''
,
selectSku
:
{
city
:
''
,
selectedNum
:
1
,
province
:
''
selectedSkuComb
:
{}
},
},
goods
:
null
,
addressVal
:
{
productList
:
[]
id
:
null
,
};
area_name
:
''
,
},
district
:
''
,
city
:
''
,
computed
:
{
province
:
''
// itemImgs() {
},
// debugger;
goods
:
null
,
// return this.goods.info.gallery;
productList
:
[]
// }
};
},
},
created
()
{
computed
:
{
this
.
initData
();
// itemImgs() {
},
// debugger;
// return this.goods.info.gallery;
methods
:
{
// }
async
initData
()
{
},
// let a = this.$route.params.itemId;
this
.
$reqGet
(
`/wx/goods/detail?id=
${
this
.
itemId
}
`
).
then
(
created
()
{
res
=>
{
this
.
initData
();
this
.
goods
=
res
.
data
.
data
.
info
;
},
this
.
goods
.
attribute
=
res
.
data
.
data
.
attribute
;
this
.
goods
.
specificationList
=
res
.
data
.
data
.
specificationList
;
methods
:
{
this
.
goods
.
productList
=
res
.
data
.
data
.
productList
;
async
initData
()
{
this
.
productList
=
res
.
data
.
data
.
productList
;
// let a = this.$route.params.itemId;
this
.
itemImgs
=
res
.
data
.
data
.
info
.
gallery
||
[];
this
.
$reqGet
(
`/wx/goods/detail?id=
${
this
.
itemId
}
`
).
then
(
this
.
collectAdd
=
res
.
data
.
data
.
userHasCollect
===
1
;
res
=>
{
}
this
.
goods
=
res
.
data
.
data
.
info
;
);
this
.
goods
.
attribute
=
res
.
data
.
data
.
attribute
;
this
.
goods
.
specificationList
=
res
.
data
.
data
.
specificationList
;
let
{
data
}
=
await
this
.
$reqGet
(
'
/wx/cart/goodscount
'
);
this
.
goods
.
productList
=
res
.
data
.
data
.
productList
;
this
.
cartInfo
=
data
.
data
;
this
.
productList
=
res
.
data
.
data
.
productList
;
this
.
itemImgs
=
res
.
data
.
data
.
info
.
gallery
||
[];
// this.$reqGet(GOODS_DETAIL).then(res => {
this
.
collectAdd
=
res
.
data
.
data
.
userHasCollect
===
1
;
// this.goods = res.data.data;
}
// });
);
},
openSku
(
status
)
{
let
{
data
}
=
await
this
.
$reqGet
(
'
/wx/cart/goodscount
'
);
const
goodAction
=
this
.
$refs
.
goodAction
;
this
.
cartInfo
=
data
.
data
;
goodAction
.
skuClick
(
status
);
},
// this.$reqGet(GOODS_DETAIL).then(res => {
cartEvent
(
count
)
{
// this.goods = res.data.data;
this
.
cartInfo
=
~~
this
.
cartInfo
+
~~
count
+
''
;
// });
},
},
doBuyNow
()
{
openSku
(
status
)
{
// if (
const
goodAction
=
this
.
$refs
.
goodAction
;
// (this.goods.has_sku && this.selectSku.sku_id) ||
goodAction
.
skuClick
(
status
);
// !this.goods.has_sku
},
// ) {
cartEvent
(
count
)
{
// this.$router.push({ name: 'placeOrderEntity' });
this
.
cartInfo
=
~~
this
.
cartInfo
+
~~
count
+
''
;
// } else {
},
// const goodAction = this.$refs.goodAction;
doBuyNow
()
{
// goodAction.showSku = true;
// if (
// goodAction.isSkuBuy = true;
// (this.goods.has_sku && this.selectSku.sku_id) ||
// }
// !this.goods.has_sku
},
// ) {
addCart
()
{
// this.$router.push({ name: 'placeOrderEntity' });
// debugger;
// } else {
// if (this.goods.has_sku && this.selectSku.sku_id) {
// const goodAction = this.$refs.goodAction;
// this.$reqPost('/wx/cart/add', {
// goodAction.showSku = true;
// goodsId: this.itemId,
// goodAction.isSkuBuy = true;
// number: 1
// }
// }).then(() => {
},
// this.$toast({
addCart
()
{
// message: '已添加至购物车',
// debugger;
// duration: 1500
// if (this.goods.has_sku && this.selectSku.sku_id) {
// });
// this.$reqPost('/wx/cart/add', {
// this.cartInfo = String(parseInt(this.cartInfo) + 1);
// goodsId: this.itemId,
// });
// number: 1
// }
// }).then(() => {
},
// this.$toast({
toCart
()
{
// message: '已添加至购物车',
this
.
$router
.
push
({
// duration: 1500
name
:
'
cart
'
// });
});
// this.cartInfo = String(parseInt(this.cartInfo) + 1);
},
// });
async
addCollect
()
{
// }
let
{
data
}
=
await
this
.
$reqPost
(
},
'
/wx/collect/addordelete
'
,
doContact
()
{
{
this
.
showContact
=
true
;
valueId
:
this
.
itemId
,
},
type
:
0
toCart
()
{
}
this
.
$router
.
push
({
);
name
:
'
cart
'
let
type
=
data
.
data
.
type
;
});
this
.
collectAdd
=
type
===
'
add
'
?
true
:
false
;
},
this
.
$toast
({
async
addCollect
()
{
message
:
this
.
collectAdd
?
'
添加成功
'
:
'
取消成功
'
,
let
{
data
}
=
await
this
.
$reqPost
(
duration
:
1500
'
/wx/collect/addordelete
'
,
});
{
}
valueId
:
this
.
itemId
,
},
type
:
0
}
components
:
{
);
[
Popup
.
name
]:
Popup
,
let
type
=
data
.
data
.
type
;
[
Swipe
.
name
]:
Swipe
,
this
.
collectAdd
=
type
===
'
add
'
?
true
:
false
;
[
SwipeItem
.
name
]:
SwipeItem
,
this
.
$toast
({
[
GoodsAction
.
name
]:
GoodsAction
,
message
:
this
.
collectAdd
?
'
添加成功
'
:
'
取消成功
'
,
[
GoodsActionBigBtn
.
name
]:
GoodsActionBigBtn
,
duration
:
1500
[
GoodsActionMiniBtn
.
name
]:
GoodsActionMiniBtn
,
});
'
entity-group
'
:
()
=>
}
import
(
/* webpackChunkName: "EntityGroup" */
'
./EntityGroup/index
'
),
},
'
virtual-group
'
:
()
=>
import
(
/* webpackChunkName: "VirtualGroup" */
'
./VirtualGroup/index.vue
'
)
components
:
{
}
[
md_kefu
.
name
]:
md_kefu
,
};
[
Popup
.
name
]:
Popup
,
</
script
>
[
Swipe
.
name
]:
Swipe
,
[
SwipeItem
.
name
]:
SwipeItem
,
<
style
lang=
"scss"
scoped
>
[
GoodsAction
.
name
]:
GoodsAction
,
.item_detail
{
[
GoodsActionBigBtn
.
name
]:
GoodsActionBigBtn
,
img
{
[
GoodsActionMiniBtn
.
name
]:
GoodsActionMiniBtn
,
max-width
:
100%
;
'
entity-group
'
:
()
=>
}
import
(
/* webpackChunkName: "EntityGroup" */
'
./EntityGroup/index
'
),
}
'
virtual-group
'
:
()
=>
import
(
/* webpackChunkName: "VirtualGroup" */
'
./VirtualGroup/index.vue
'
)
.item_cell_group
{
}
margin-bottom
:
15px
;
};
}
</
script
>
.item_price
{
<
style
lang=
"scss"
scoped
>
font-size
:
20px
;
.item_detail
{
color
:
$red
;
img
{
margin-right
:
10px
;
max-width
:
100%
;
}
}
}
.item_market_price
{
color
:
$font-color-gray
;
.item_cell_group
{
text-decoration
:
line-through
;
margin-bottom
:
15px
;
font-size
:
$font-size-small
;
}
}
.item_price
{
.item-title
{
font-size
:
20px
;
line-height
:
1
.4
;
color
:
$red
;
}
margin-right
:
10px
;
}
.item_dispatch
{
font-size
:
$font-size-small
;
.item_market_price
{
color
:
$font-color-gray
;
color
:
$font-color-gray
;
}
text-decoration
:
line-through
;
font-size
:
$font-size-small
;
.item_intro
{
}
line-height
:
18px
;
margin
:
5px
0
;
.item-title
{
font-size
:
$font-size-small
;
line-height
:
1
.4
;
color
:
$font-color-gray
;
}
overflow
:
hidden
;
text-overflow
:
ellipsis
;
.item_dispatch
{
display
:
-
webkit-box
;
font-size
:
$font-size-small
;
-webkit-box-orient
:
vertical
;
color
:
$font-color-gray
;
-webkit-line-clamp
:
3
;
}
}
.item_intro
{
.item_desc
{
line-height
:
18px
;
background-color
:
#fff
;
margin
:
5px
0
;
p
{
font-size
:
$font-size-small
;
padding
:
0
10px
;
color
:
$font-color-gray
;
}
overflow
:
hidden
;
/
deep
/
img
{
text-overflow
:
ellipsis
;
max-width
:
100%
;
display
:
-
webkit-box
;
display
:
block
;
-webkit-box-orient
:
vertical
;
}
-webkit-line-clamp
:
3
;
}
}
.item_desc_title
{
.item_desc
{
@include
one-border
;
background-color
:
#fff
;
padding
:
10px
0
;
p
{
text-align
:
center
;
padding
:
0
10px
;
}
}
</
style
>
/
deep
/
img
{
max-width
:
100%
;
display
:
block
;
}
}
.item_desc_title
{
@include
one-border
;
padding
:
10px
0
;
text-align
:
center
;
}
</
style
>
litemall-vue/src/views/user/module-server/index.vue
View file @
8f2890f8
<
template
>
<
template
>
<div>
<div>
<van-cell-group>
<van-cell-group>
<van-cell
title=
"联系客服"
@
click=
"showKefu = true"
isLink
></van-cell>
<van-cell
title=
"联系客服"
@
click=
"showKefu = true"
isLink
></van-cell>
<van-cell
title=
"意见反馈"
isLink
></van-cell>
<van-cell
title=
"意见反馈"
isLink
></van-cell>
<van-cell
title=
"常见问题"
isLink
></van-cell>
<van-cell
title=
"常见问题"
isLink
></van-cell>
</van-cell-group>
</van-cell-group>
<van-popup
v-model=
"showKefu"
>
<van-popup
v-model=
"showKefu"
>
<md-kefu
mobile=
"16454193338"
/>
电话 XXX
</van-popup>
</van-popup>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
{
Popup
}
from
'
vant
'
;
import
{
Popup
}
from
'
vant
'
;
import
md_kefu
from
'
@/vue/components/md-kefu/
'
;
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
showKefu
:
false
showKefu
:
false
};
};
},
},
components
:
{
components
:
{
[
Popup
.
name
]:
Popup
[
Popup
.
name
]:
Popup
,
}
[
md_kefu
.
name
]:
md_kefu
};
}
</
script
>
};
</
script
>
litemall-vue/src/views/user/tabbar-user-module.vue
View file @
8f2890f8
<
template
>
<
template
>
<div
class=
"user_module"
>
<div
class=
"user_module"
>
<van-cell-group>
<van-cell-group>
<van-cell
icon=
"shoucang"
title=
"我的收藏"
to=
"/user/collect"
isLink
/>
<van-cell
icon=
"shoucang"
title=
"我的收藏"
to=
"/user/collect"
isLink
/>
<!--
<van-cell
icon=
"team"
title=
"我的团队"
to=
"/user/team"
isLink
/>
-->
<!--
<van-cell
icon=
"team"
title=
"我的团队"
to=
"/user/team"
isLink
/>
-->
<!--
<van-cell
icon=
"gold-bean"
title=
"我的金豆"
isLink
/>
-->
<!--
<van-cell
icon=
"gold-bean"
title=
"我的金豆"
isLink
/>
-->
<van-cell
icon=
"dingwei"
title=
"收货地址"
to=
"/user/address"
isLink
/>
<van-cell
icon=
"dingwei"
title=
"收货地址"
to=
"/user/address"
isLink
/>
<!--
<van-cell
icon=
"id-card"
title=
"实名认证"
to=
"/user/autonym"
isLink
/>
-->
<!--
<van-cell
icon=
"id-card"
title=
"实名认证"
to=
"/user/autonym"
isLink
/>
-->
<!--
<van-cell
icon=
"kefu"
title=
"服务中心"
to=
"/user/server"
isLink
/>
-->
<van-cell
icon=
"kefu"
title=
"服务中心"
to=
"/user/server"
isLink
/>
</van-cell-group>
</van-cell-group>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
export
default
{
export
default
{
name
:
'
user-module
'
name
:
'
user-module
'
};
};
</
script
>
</
script
>
<
style
scoped
lang=
"scss"
>
<
style
scoped
lang=
"scss"
>
.user_module
{
.user_module
{
background-color
:
#fff
;
background-color
:
#fff
;
}
}
</
style
>
</
style
>
litemall-vue/src/vue/components/md-kefu/index.vue
deleted
100755 → 0
View file @
76269132
<
template
>
<div
class=
"contact_popup"
>
<div
class=
"contact_box contact_top"
>
<div>
微信长按识别店主二维码
</div>
<div><img
src=
"../../../assets/images/qc_code.png"
alt=
"店主二维码"
></div>
</div>
<div
class=
"contact_box"
>
<div><van-icon
name=
"phone"
/>
{{
mobile
}}
</div>
<div
class=
"contact_btn"
><a
:href=
"'tel:' + mobile"
>
联系店家
</a></div>
</div>
</div>
</
template
>
<
script
>
export
default
{
name
:
'
md-kefu
'
,
props
:
{
qcCode
:
String
,
mobile
:
String
}
};
</
script
>
<
style
lang=
"scss"
scoped
>
.contact_popup
{
white-space
:
nowrap
;
background-color
:
$bg-color
;
text-align
:
center
;
border-radius
:
5px
;
.contact_box
{
padding
:
20px
30px
;
>
div
:first-child
{
margin-bottom
:
20px
;
}
}
.contact_top
{
@include
one-border
;
&
::after
{
border-bottom-color
:
#999
;
}
}
.contact_btn
{
border
:
1px
solid
$red
;
width
:
80%
;
margin
:
0
auto
;
color
:
#fff
;
background-color
:
$red
;
padding
:
5px
0
;
border-radius
:
3px
;
a
{
color
:
#fff
;
display
:
block
;
}
}
img
{
max-width
:
100%
;
max-height
:
100%
;
}
}
</
style
>
Write
Preview
Supports
Markdown
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