jufubao-movie 1.0.39-beta2 → 1.0.39-beta5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/components/JfbMovieLineLineSeat/Attr.js +11 -0
- package/src/components/JfbMovieLineLineSeat/JfbMovieLineLineSeat.vue +75 -11
- package/src/components/JfbMovieLineLineSeat/Mock.js +1 -0
- package/src/components/JfbMovieLineLineSeat/XdOnlineSeat.vue +37 -27
- package/src/components/JfbMovieLineLineSeat/XdOnlineSeatMove.vue +13 -9
- package/src/components/JfbMovieTfkFilmList/ContentItem.vue +10 -3
- package/src/components/JfbMovieTfkFilmList/JfbMovieTfkFilmList.vue +16 -9
- package/src/components/JfbMovieTfkFilmRecommend/Attr.js +31 -3
- package/src/components/JfbMovieTfkFilmRecommend/JfbMovieTfkFilmRecommend.vue +21 -3
package/package.json
CHANGED
|
@@ -4,6 +4,17 @@ export default {
|
|
|
4
4
|
style: [],
|
|
5
5
|
advanced: [],
|
|
6
6
|
content: [
|
|
7
|
+
{
|
|
8
|
+
label: '是否显示影院名称:',
|
|
9
|
+
ele: 'xd-radio',
|
|
10
|
+
valueKey: 'isShowTitle',
|
|
11
|
+
value: 'Y',
|
|
12
|
+
groupKey:'content',
|
|
13
|
+
list: [
|
|
14
|
+
{label: '是', value: 'Y'},
|
|
15
|
+
{label: '否', value: 'N'},
|
|
16
|
+
]
|
|
17
|
+
},
|
|
7
18
|
{
|
|
8
19
|
label: '订单确认路径:',
|
|
9
20
|
ele: 'xd-select-pages-path',
|
|
@@ -18,14 +18,23 @@
|
|
|
18
18
|
<!-- #endif -->
|
|
19
19
|
<view class="jfb-movie-line-line-seat__body">
|
|
20
20
|
<view v-if="loadingList" class="skeleton-wrap">
|
|
21
|
-
<view class="seat_head">
|
|
21
|
+
<view class="seat_head" v-if="isShowTitle === 'Y'">
|
|
22
22
|
<view></view>
|
|
23
23
|
<view></view>
|
|
24
24
|
</view>
|
|
25
|
-
<view class="
|
|
26
|
-
<view
|
|
27
|
-
|
|
25
|
+
<view class="seat_tips">
|
|
26
|
+
<view></view>
|
|
27
|
+
<view></view>
|
|
28
|
+
<view></view>
|
|
29
|
+
<view></view>
|
|
30
|
+
<view></view>
|
|
31
|
+
</view>
|
|
32
|
+
<view class="seat_body" :class="{Y:this.isShowTitle ==='Y', 'N': isShowTitle ==='N'}">
|
|
33
|
+
<view class="seat_line" v-for="i in yItem" :key="i">
|
|
34
|
+
<view class="seat_item" v-for="ii in xItem" :key="ii"></view>
|
|
28
35
|
</view>
|
|
36
|
+
<view v-if="isShowTitle === 'Y'" class="line-Y"></view>
|
|
37
|
+
<view v-else class="line-N"></view>
|
|
29
38
|
</view>
|
|
30
39
|
<view class="seat_notice"></view>
|
|
31
40
|
<view class="seat_foot">
|
|
@@ -37,6 +46,7 @@
|
|
|
37
46
|
<xd-online-seat
|
|
38
47
|
v-if="filmId"
|
|
39
48
|
ref="xdOnlineSeat"
|
|
49
|
+
:is-show-title="isShowTitle"
|
|
40
50
|
:key="cinemaSeatKey"
|
|
41
51
|
:is-old="false"
|
|
42
52
|
:film-id="filmId"
|
|
@@ -69,6 +79,7 @@
|
|
|
69
79
|
mixins: [componentsMixins,extsMixins,JfbMovieLineLineSeatMixin],
|
|
70
80
|
data() {
|
|
71
81
|
return {
|
|
82
|
+
hideMask: true,
|
|
72
83
|
scheduleId: '',
|
|
73
84
|
filmId: '',
|
|
74
85
|
cinemaId: '',
|
|
@@ -84,8 +95,11 @@
|
|
|
84
95
|
//面板
|
|
85
96
|
payPath: "", //三方支付路径
|
|
86
97
|
moviePayPath: "", //订单确认路径
|
|
98
|
+
isShowTitle:'Y',//是否显示影院名称
|
|
87
99
|
timer: null,
|
|
88
100
|
time: 0,
|
|
101
|
+
xItem: 10,
|
|
102
|
+
yItem: 7,
|
|
89
103
|
}
|
|
90
104
|
},
|
|
91
105
|
watch: {
|
|
@@ -98,6 +112,7 @@
|
|
|
98
112
|
this.init(this.container);
|
|
99
113
|
let systemInfo = uni.getSystemInfoSync();
|
|
100
114
|
getApp().globalData.$systemInfo = systemInfo;
|
|
115
|
+
|
|
101
116
|
},
|
|
102
117
|
methods: {
|
|
103
118
|
onJfbLoad(options) {
|
|
@@ -152,7 +167,10 @@
|
|
|
152
167
|
*/
|
|
153
168
|
init(container) {
|
|
154
169
|
this.moviePayPath = getContainerPropsValue(container, 'content.movie_pay_path', {value: ""}).value;
|
|
155
|
-
this.payPath = getContainerPropsValue(container, "content.payPath", {value: "
|
|
170
|
+
this.payPath = getContainerPropsValue(container, "content.payPath", {value: ""}).value;
|
|
171
|
+
this.isShowTitle = getContainerPropsValue(container, "content.isShowTitle", 'Y');
|
|
172
|
+
if(this.isShowTitle === 'Y') this.yItem = 7;
|
|
173
|
+
else this.yItem = 10;
|
|
156
174
|
},
|
|
157
175
|
handleGetFilm(resolve) {
|
|
158
176
|
// console.log('11111', paiqi.result);
|
|
@@ -326,29 +344,75 @@
|
|
|
326
344
|
|
|
327
345
|
.jfb-movie-line-line-seat {
|
|
328
346
|
&__body {
|
|
347
|
+
background-color: #f8f8f8;
|
|
329
348
|
.skeleton-wrap{
|
|
330
349
|
height: 100vh;
|
|
350
|
+
|
|
331
351
|
.seat_head{
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
margin
|
|
352
|
+
border-radius: 24rpx;
|
|
353
|
+
overflow: hidden;
|
|
354
|
+
margin: 20rpx 20rpx 5rpx;
|
|
355
|
+
box-shadow: 0 4rpx 40rpx rgba(0, 0, 0, 0.2);
|
|
356
|
+
position: relative;
|
|
357
|
+
padding: unit(20, rpx) unit(30, rpx);
|
|
358
|
+
|
|
335
359
|
& > view:first-child{
|
|
336
|
-
.skeleton-item(
|
|
360
|
+
.skeleton-item(80%, 36rpx);
|
|
361
|
+
padding-bottom: 15rpx;
|
|
337
362
|
}
|
|
338
363
|
& > view:last-child{
|
|
339
364
|
.skeleton-item(100%, 30rpx);
|
|
340
365
|
margin-top: 10rpx;
|
|
341
366
|
}
|
|
342
367
|
}
|
|
368
|
+
.seat_tips {
|
|
369
|
+
display: flex;
|
|
370
|
+
justify-content: center;
|
|
371
|
+
align-items: center;
|
|
372
|
+
padding-top: 50rpx;
|
|
373
|
+
& > view {
|
|
374
|
+
.skeleton-item(80rpx, 40rpx);
|
|
375
|
+
|
|
376
|
+
margin-right: 20rpx;
|
|
377
|
+
& >view:last-child{
|
|
378
|
+
margin-right: 0;
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
}
|
|
343
382
|
.seat_body{
|
|
344
|
-
|
|
383
|
+
position: relative;
|
|
384
|
+
|
|
385
|
+
& .line-N {
|
|
386
|
+
position: absolute;
|
|
387
|
+
left:20rpx;
|
|
388
|
+
top:40rpx;
|
|
389
|
+
.skeleton-item(25rpx, 580rpx);
|
|
390
|
+
}
|
|
391
|
+
& .line-Y {
|
|
392
|
+
position: absolute;
|
|
393
|
+
left:20rpx;
|
|
394
|
+
top:40rpx;
|
|
395
|
+
.skeleton-item(25rpx, 400rpx);
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
&.Y {
|
|
399
|
+
.skeleton-item(100%, 500rpx, 0, #FEFEFE);
|
|
400
|
+
}
|
|
401
|
+
&.N {
|
|
402
|
+
.skeleton-item(100%, 700rpx, 0, #FEFEFE);
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
|
|
406
|
+
|
|
345
407
|
padding: 20rpx 100rpx;
|
|
346
408
|
box-sizing: border-box;
|
|
347
409
|
.seat_line{
|
|
348
410
|
display: flex;
|
|
349
411
|
margin: 20rpx;
|
|
350
412
|
.seat_item{
|
|
351
|
-
|
|
413
|
+
margin: 0 6rpx;
|
|
414
|
+
.skeleton-item(40rpx, 40rpx);
|
|
415
|
+
border-radius: 10rpx;
|
|
352
416
|
}
|
|
353
417
|
}
|
|
354
418
|
}
|
|
@@ -1,21 +1,14 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<view class="xd-seat" v-if="paiqiStatus">
|
|
3
|
+
<view class="float"></view>
|
|
3
4
|
<view
|
|
4
5
|
class="xd-seat__title"
|
|
5
|
-
v-if="filmInfo"
|
|
6
|
+
v-if="isShowTitle === 'Y' && filmInfo"
|
|
6
7
|
id="xd-seat__title"
|
|
7
8
|
:style="{ borderTopColor: styleMainColor }"
|
|
8
9
|
>
|
|
9
|
-
<view class="xd-seat__title-name">{{ filmInfo["
|
|
10
|
-
<view class="xd-seat__title-address">{{cinemaInfo["
|
|
11
|
-
<view class="xd-seat__title-back" v-if="show" @click.stop="back">
|
|
12
|
-
<xd-font-icon
|
|
13
|
-
icon="iconzhiyuanfanhui12"
|
|
14
|
-
width="50"
|
|
15
|
-
height="50"
|
|
16
|
-
size="50"
|
|
17
|
-
></xd-font-icon>
|
|
18
|
-
</view>
|
|
10
|
+
<view class="xd-seat__title-name" :style="{marginBottom:cinemaInfo['cinema_address']?'15rpx':0 }">{{ filmInfo["cinema_name"] }}</view>
|
|
11
|
+
<view class="xd-seat__title-address" v-if="cinemaInfo['cinema_address']">{{cinemaInfo["cinema_address"] }}</view>
|
|
19
12
|
</view>
|
|
20
13
|
<view class="xd-seat__content" v-if="height !== null" :style="getHeight">
|
|
21
14
|
<xd-online-seat-move
|
|
@@ -38,9 +31,7 @@
|
|
|
38
31
|
showIcon
|
|
39
32
|
>
|
|
40
33
|
<view
|
|
41
|
-
style="
|
|
42
|
-
padding: 10rpx 0rpx 10rpx 20rpx;
|
|
43
|
-
"
|
|
34
|
+
style="padding: 10rpx 0rpx 10rpx 20rpx;"
|
|
44
35
|
v-for="(item, index) in noticeList"
|
|
45
36
|
:key="index"
|
|
46
37
|
>{{ item }}</view>
|
|
@@ -225,6 +216,10 @@ export default {
|
|
|
225
216
|
XdNoticeBar,
|
|
226
217
|
},
|
|
227
218
|
props: {
|
|
219
|
+
isShowTitle: {
|
|
220
|
+
type: String,
|
|
221
|
+
default:'Y'
|
|
222
|
+
},
|
|
228
223
|
isOld: {
|
|
229
224
|
type: Boolean,
|
|
230
225
|
default: true,
|
|
@@ -361,7 +356,7 @@ export default {
|
|
|
361
356
|
this.show = false;
|
|
362
357
|
// #endif
|
|
363
358
|
// #ifdef H5
|
|
364
|
-
this.show =
|
|
359
|
+
this.show = false;
|
|
365
360
|
// #endif
|
|
366
361
|
|
|
367
362
|
this.getFilm();
|
|
@@ -477,6 +472,7 @@ export default {
|
|
|
477
472
|
this.$emit("onGetFilm", (film) => {
|
|
478
473
|
this.cinemaInfo = film["cinema_data"];
|
|
479
474
|
this.filmInfo = this.getFilmInfo(film["film_data"]);
|
|
475
|
+
debugger
|
|
480
476
|
this.getScheduleList(film["paiqi_data"]);
|
|
481
477
|
console.log("getFilm", film);
|
|
482
478
|
this.paiqiStatus = true;
|
|
@@ -491,10 +487,16 @@ export default {
|
|
|
491
487
|
*/
|
|
492
488
|
setContent() {
|
|
493
489
|
this.$nextTick(() => {
|
|
490
|
+
let elxs = [];
|
|
491
|
+
if(this.isShowTitle === 'Y') elxs.push('#xd-seat__title');
|
|
492
|
+
elxs.push('#xd-seat__footer');
|
|
494
493
|
this.$xdUniHelper
|
|
495
|
-
.getWindowHeight(
|
|
494
|
+
.getWindowHeight(elxs, this)
|
|
496
495
|
.then((res) => {
|
|
497
|
-
let top =
|
|
496
|
+
let top = 0;
|
|
497
|
+
if(this.isShowTitle === 'Y') {
|
|
498
|
+
top = res["#xd-seat__title"]["height"] ;
|
|
499
|
+
}
|
|
498
500
|
let footer = res["#xd-seat__footer"]["height"];
|
|
499
501
|
console.log("getFilm", top, footer);
|
|
500
502
|
this.height = `calc(100vh - ${
|
|
@@ -648,6 +650,10 @@ export default {
|
|
|
648
650
|
</script>
|
|
649
651
|
|
|
650
652
|
<style scoped lang="less">
|
|
653
|
+
.float {
|
|
654
|
+
height: 1px;
|
|
655
|
+
width: 100%;
|
|
656
|
+
}
|
|
651
657
|
.xd-seat {
|
|
652
658
|
height: 100%;
|
|
653
659
|
overflow-y: hidden;
|
|
@@ -702,22 +708,26 @@ export default {
|
|
|
702
708
|
}
|
|
703
709
|
|
|
704
710
|
&__title {
|
|
705
|
-
border-
|
|
706
|
-
|
|
707
|
-
|
|
711
|
+
border-radius: 24rpx;
|
|
712
|
+
overflow: hidden;
|
|
713
|
+
margin: 20rpx 20rpx 5rpx;
|
|
714
|
+
box-shadow: 0 4rpx 40rpx rgba(0, 0, 0, 0.2);
|
|
708
715
|
position: relative;
|
|
709
|
-
padding: unit(20, rpx) unit(
|
|
716
|
+
padding: unit(20, rpx) unit(30, rpx);
|
|
710
717
|
z-index: 100;
|
|
711
718
|
|
|
712
719
|
&-name {
|
|
713
|
-
font-size:
|
|
720
|
+
font-size: 36rpx;
|
|
714
721
|
line-height: unit(40, rpx);
|
|
715
|
-
|
|
722
|
+
.uni-max-cut(1,40);
|
|
723
|
+
margin-bottom: 10rpx;
|
|
716
724
|
}
|
|
717
725
|
|
|
718
726
|
&-address {
|
|
719
|
-
font-size:
|
|
720
|
-
|
|
727
|
+
font-size: 28rpx;
|
|
728
|
+
line-height: unit(36, rpx);
|
|
729
|
+
.uni-max-cut(1,36);
|
|
730
|
+
color: #A6A6A6;
|
|
721
731
|
}
|
|
722
732
|
|
|
723
733
|
&-back {
|
|
@@ -847,11 +857,11 @@ export default {
|
|
|
847
857
|
&-input {
|
|
848
858
|
font-size: @xd-font-size-base;
|
|
849
859
|
background: #fff;
|
|
850
|
-
border-radius: unit(
|
|
860
|
+
border-radius: unit(30, rpx);
|
|
851
861
|
flex: 1;
|
|
852
862
|
height: unit(50, rpx);
|
|
853
863
|
line-height: unit(50, rpx);
|
|
854
|
-
padding: unit(
|
|
864
|
+
padding: unit(10,rpx) unit(25, rpx);
|
|
855
865
|
background: #f8f8f8;
|
|
856
866
|
|
|
857
867
|
// &:hover {
|
|
@@ -407,7 +407,6 @@
|
|
|
407
407
|
:style="{
|
|
408
408
|
top : seatOffsetTop + 'px',
|
|
409
409
|
width: 30 * scale + 'rpx',
|
|
410
|
-
background: styleMainColor
|
|
411
410
|
}"
|
|
412
411
|
>
|
|
413
412
|
<view
|
|
@@ -1192,7 +1191,12 @@
|
|
|
1192
1191
|
|
|
1193
1192
|
</script>
|
|
1194
1193
|
<style lang="less">
|
|
1195
|
-
|
|
1194
|
+
.preloadIcon {
|
|
1195
|
+
position: fixed;
|
|
1196
|
+
top: -9999px;
|
|
1197
|
+
left: -9999px;
|
|
1198
|
+
z-index: 0;
|
|
1199
|
+
}
|
|
1196
1200
|
.xd-online-seat {
|
|
1197
1201
|
height: 100%;
|
|
1198
1202
|
box-sizing: border-box;
|
|
@@ -1244,21 +1248,21 @@
|
|
|
1244
1248
|
}
|
|
1245
1249
|
|
|
1246
1250
|
&__stage {
|
|
1247
|
-
background-image: url(
|
|
1251
|
+
background-image: url('https://img.jufubao.cn/common/stage.png?v1');
|
|
1248
1252
|
background-size: 100%;
|
|
1249
1253
|
background-position: top left;
|
|
1250
1254
|
background-repeat: no-repeat;
|
|
1251
|
-
color:
|
|
1255
|
+
color: #999;
|
|
1252
1256
|
width: unit(533, rpx);
|
|
1253
1257
|
height: unit(50, rpx);
|
|
1254
|
-
font-size:
|
|
1258
|
+
font-size: 20rpx;
|
|
1255
1259
|
text-align: center;
|
|
1256
1260
|
margin: unit(20, rpx) auto unit(40, rpx);
|
|
1257
1261
|
box-sizing: border-box;
|
|
1258
1262
|
|
|
1259
|
-
|
|
1263
|
+
& > text {
|
|
1260
1264
|
display: inline-block;
|
|
1261
|
-
padding: unit(
|
|
1265
|
+
padding: unit(40, rpx) 0 0;
|
|
1262
1266
|
}
|
|
1263
1267
|
}
|
|
1264
1268
|
|
|
@@ -1280,7 +1284,7 @@
|
|
|
1280
1284
|
justify-content: center;
|
|
1281
1285
|
align-content: center;
|
|
1282
1286
|
height: unit(50, rpx);
|
|
1283
|
-
padding: unit(
|
|
1287
|
+
padding: unit(20, rpx) 0 10rpx;
|
|
1284
1288
|
|
|
1285
1289
|
&-item {
|
|
1286
1290
|
font-size: @xd-font-size-base;
|
|
@@ -1344,7 +1348,7 @@
|
|
|
1344
1348
|
&__left-bar {
|
|
1345
1349
|
position: fixed;
|
|
1346
1350
|
left: unit(10, rpx);
|
|
1347
|
-
background-color:
|
|
1351
|
+
background-color: #ACADAF;
|
|
1348
1352
|
border-radius: unit(14, rpx);
|
|
1349
1353
|
overflow: hidden;
|
|
1350
1354
|
font-size: unit(20, rpx);
|
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
class="image"
|
|
5
5
|
:style="{marginRight: outSpacing + 'rpx',borderRadius:borderRadius+'rpx'}"
|
|
6
6
|
>
|
|
7
|
-
<image :src="
|
|
7
|
+
<image v-if="errorStatus" :src="errorImage" :alt="item['show_name']" ></image>
|
|
8
|
+
<image v-if="!errorStatus" :src="item['poster']" :alt="item['show_name']" @error="handleError()" ></image>
|
|
8
9
|
</view>
|
|
9
10
|
<view class="middle">
|
|
10
11
|
<view class="name">{{item['show_name']}}</view>
|
|
@@ -80,12 +81,18 @@
|
|
|
80
81
|
}
|
|
81
82
|
|
|
82
83
|
},
|
|
84
|
+
data(){
|
|
85
|
+
return {
|
|
86
|
+
errorImage: 'https://img.jufubao.cn/common/error_movie.png?v20',
|
|
87
|
+
errorStatus: false,
|
|
88
|
+
}
|
|
89
|
+
},
|
|
83
90
|
created() {
|
|
84
91
|
|
|
85
92
|
},
|
|
86
93
|
methods:{
|
|
87
|
-
handleError(
|
|
88
|
-
|
|
94
|
+
handleError(){
|
|
95
|
+
this.errorStatus = true;
|
|
89
96
|
},
|
|
90
97
|
handleDetail(item){
|
|
91
98
|
console.log('handleDetail.item',item,item.id);
|
|
@@ -716,8 +716,6 @@
|
|
|
716
716
|
}
|
|
717
717
|
}
|
|
718
718
|
|
|
719
|
-
|
|
720
|
-
|
|
721
719
|
jfbRootExec(fName, {
|
|
722
720
|
vm: this,
|
|
723
721
|
data:params
|
|
@@ -727,9 +725,12 @@
|
|
|
727
725
|
|
|
728
726
|
//影片列表处理
|
|
729
727
|
if(this.type === 'rightnow' || this.type==='hot'){
|
|
730
|
-
|
|
731
|
-
this.
|
|
732
|
-
|
|
728
|
+
//预览模式
|
|
729
|
+
if(this.isPreview) this.dataList = (this.dataList||[]).concat(res['list']);
|
|
730
|
+
else {
|
|
731
|
+
this.virtualList.pushVirtualData(res['list']);
|
|
732
|
+
this.pageToken = res.next_page_token;
|
|
733
|
+
}
|
|
733
734
|
return;
|
|
734
735
|
}
|
|
735
736
|
|
|
@@ -739,7 +740,6 @@
|
|
|
739
740
|
this.cinemaOrgDataList = res['list'];
|
|
740
741
|
this.cinemaAreaList = [{area_code:'all', area_name:'全城'}].concat(res['area_list']);
|
|
741
742
|
|
|
742
|
-
|
|
743
743
|
//小于数量页面显示记录
|
|
744
744
|
if(res['list'].length <= this.pageSize) {
|
|
745
745
|
this.dataList = res['list'];
|
|
@@ -748,8 +748,14 @@
|
|
|
748
748
|
return
|
|
749
749
|
}
|
|
750
750
|
|
|
751
|
-
|
|
752
|
-
|
|
751
|
+
if(this.isPreview) {
|
|
752
|
+
this.dataList = (this.dataList||[]).concat(res['list'].slice(0, 20));
|
|
753
|
+
}
|
|
754
|
+
else {
|
|
755
|
+
//正常处理
|
|
756
|
+
this.getCinemaOrgData();
|
|
757
|
+
}
|
|
758
|
+
|
|
753
759
|
}
|
|
754
760
|
|
|
755
761
|
}).catch(e=>{
|
|
@@ -870,6 +876,7 @@
|
|
|
870
876
|
},
|
|
871
877
|
|
|
872
878
|
onJfbScroll(options){
|
|
879
|
+
if(!this.pageToken || this.dataList === null) return false;
|
|
873
880
|
if(this.type === 'hot' || this.type === 'rightnow'){
|
|
874
881
|
this.virtualList.onScrollEvent(options.e.scrollTop);
|
|
875
882
|
}
|
|
@@ -895,7 +902,7 @@
|
|
|
895
902
|
},
|
|
896
903
|
|
|
897
904
|
onJfbReachBottom(options) {
|
|
898
|
-
if(!this.pageToken) return false;
|
|
905
|
+
if(!this.pageToken || this.dataList === null) return false;
|
|
899
906
|
this.getList();
|
|
900
907
|
},
|
|
901
908
|
|
|
@@ -261,21 +261,49 @@ export default {
|
|
|
261
261
|
groupKey:'style',
|
|
262
262
|
},
|
|
263
263
|
{
|
|
264
|
-
label: '
|
|
264
|
+
label: '总数量文字颜色:',
|
|
265
265
|
ele: 'xd-color',
|
|
266
266
|
valueKey: 'totalColor',
|
|
267
267
|
value: data['totalColor'] || '',
|
|
268
268
|
groupKey:'style',
|
|
269
|
-
placeholder: '
|
|
269
|
+
placeholder: '请输入总数量文字颜色',
|
|
270
|
+
classNmae: 'input60',
|
|
271
|
+
},
|
|
272
|
+
|
|
273
|
+
|
|
274
|
+
{
|
|
275
|
+
ele: 'title',
|
|
276
|
+
label: '标题显示样式:<span style="color:red">“下划线样式”</span> 设置',
|
|
277
|
+
size: 'small',
|
|
278
|
+
groupKey:'style',
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
label: '标题文字颜色:',
|
|
282
|
+
ele: 'xd-color',
|
|
283
|
+
valueKey: 'titleLineTextColor',
|
|
284
|
+
value: data['titleLineTextColor'] || '',
|
|
285
|
+
groupKey:'style',
|
|
286
|
+
placeholder: '请输入标题文字颜色',
|
|
287
|
+
classNmae: 'input60',
|
|
288
|
+
},
|
|
289
|
+
{
|
|
290
|
+
label: '标题选中文字颜色:',
|
|
291
|
+
ele: 'xd-color',
|
|
292
|
+
valueKey: 'titleLineActTextColor',
|
|
293
|
+
value: data['titleLineActTextColor'] || '',
|
|
294
|
+
groupKey:'style',
|
|
295
|
+
placeholder: '请输入选中文字颜色',
|
|
270
296
|
classNmae: 'input60',
|
|
271
297
|
},
|
|
272
298
|
|
|
273
299
|
{
|
|
274
300
|
ele: 'title',
|
|
275
|
-
label: '
|
|
301
|
+
label: '标题显示样式:<span style="color:red">“按钮样式”</span> 设置',
|
|
276
302
|
size: 'small',
|
|
277
303
|
groupKey:'style',
|
|
278
304
|
},
|
|
305
|
+
|
|
306
|
+
|
|
279
307
|
{
|
|
280
308
|
label: '标题背景颜色:',
|
|
281
309
|
ele: 'xd-color',
|
|
@@ -20,7 +20,8 @@
|
|
|
20
20
|
v-if="showTypeListData.length > 0"
|
|
21
21
|
:style="{
|
|
22
22
|
padding: outSpacing + 'rpx',
|
|
23
|
-
backgroundImage:bgImageComp
|
|
23
|
+
backgroundImage:bgImageComp,
|
|
24
|
+
backgroundColor: bgColor
|
|
24
25
|
}">
|
|
25
26
|
<view
|
|
26
27
|
class="tfk-recommend__tab"
|
|
@@ -43,6 +44,7 @@
|
|
|
43
44
|
:class="{active: type === item.value}"
|
|
44
45
|
v-for="(item,index) in showTypeListData"
|
|
45
46
|
:key="index"
|
|
47
|
+
:style="{color: (type === item.value? titleLineActTextColor: titleLineTextColor)}"
|
|
46
48
|
>{{item.label}}<text v-if="type === item.value" :style="{backgroundColor:mainColor}"></text></view>
|
|
47
49
|
</view>
|
|
48
50
|
<view
|
|
@@ -58,7 +60,8 @@
|
|
|
58
60
|
:style="{
|
|
59
61
|
backgroundColor: type === item.value? titleTextActBgColor: titleTextBgColor,
|
|
60
62
|
color: type === item.value ? titleTextActColor: titleTextColor,
|
|
61
|
-
borderRadius:titleTextRradius+'rpx'
|
|
63
|
+
borderRadius:titleTextRradius+'rpx',
|
|
64
|
+
marginRight:outSpacing + 'rpx',
|
|
62
65
|
}"
|
|
63
66
|
>{{item.label}}</view>
|
|
64
67
|
</view>
|
|
@@ -88,7 +91,7 @@
|
|
|
88
91
|
backgroundColor:contBgColor,
|
|
89
92
|
borderRadius: contRradius + 'rpx',
|
|
90
93
|
border:contBorder,
|
|
91
|
-
boxShadow:contShadow
|
|
94
|
+
boxShadow:contShadow
|
|
92
95
|
}"
|
|
93
96
|
>
|
|
94
97
|
<view class="skeleton-wrap" v-if="dataList === null">
|
|
@@ -179,6 +182,7 @@
|
|
|
179
182
|
],
|
|
180
183
|
data() {
|
|
181
184
|
return {
|
|
185
|
+
hideMask: true,
|
|
182
186
|
options: {},
|
|
183
187
|
type:'', //hot rightnow
|
|
184
188
|
typeList:{hot:{label: '热映影片', value: 'hot'},rightnow:{label: '即将上映', value: 'rightnow'}},
|
|
@@ -192,6 +196,7 @@
|
|
|
192
196
|
showTypeListData:[],
|
|
193
197
|
|
|
194
198
|
//基础配置
|
|
199
|
+
bgColor:'',
|
|
195
200
|
outSpacing:'',
|
|
196
201
|
showMoreBtn: 'Y',
|
|
197
202
|
showTotal:'Y',
|
|
@@ -223,6 +228,10 @@
|
|
|
223
228
|
moreRradius: '40',
|
|
224
229
|
totalColor: '#999',
|
|
225
230
|
|
|
231
|
+
//line
|
|
232
|
+
titleLineTextColor:'',
|
|
233
|
+
titleLineActTextColor:'',
|
|
234
|
+
|
|
226
235
|
//内容
|
|
227
236
|
contMargin: {},
|
|
228
237
|
contBgColor:'#fff',
|
|
@@ -388,6 +397,7 @@
|
|
|
388
397
|
* @param container {object} 业务组件对象自己
|
|
389
398
|
*/
|
|
390
399
|
init(container) {
|
|
400
|
+
this.bgColor = getContainerPropsValue(container, 'content.bgColor', '');
|
|
391
401
|
this.outSpacing = getContainerPropsValue(container, 'content.outSpacing', '20');
|
|
392
402
|
this.titleMargin = getContainerPropsValue(container, 'content.titleMargin', {});
|
|
393
403
|
this.titleBgColor = getContainerPropsValue(container, 'content.titleBgColor', '#fff');
|
|
@@ -409,6 +419,10 @@
|
|
|
409
419
|
this.showHotName = getContainerPropsValue(container, 'content.showHotName', '');
|
|
410
420
|
this.showRightnowName = getContainerPropsValue(container, 'content.showRightnowName', '');
|
|
411
421
|
|
|
422
|
+
//line
|
|
423
|
+
this.titleLineTextColor = getContainerPropsValue(container, 'content.titleLineTextColor', '#333');
|
|
424
|
+
this.titleLineActTextColor= getContainerPropsValue(container, 'content.titleLineActTextColor', '#333');
|
|
425
|
+
|
|
412
426
|
this.isTitleBorder = getContainerPropsValue(container, 'content.isTitleBorder', 'N');
|
|
413
427
|
this.isTitleBorderColor = getContainerPropsValue(container, 'content.isTitleBorderColor', '#eee');
|
|
414
428
|
this.isTitleShadow = getContainerPropsValue(container, 'content.isTitleShadow', 'N');
|
|
@@ -493,6 +507,10 @@
|
|
|
493
507
|
}
|
|
494
508
|
&.button > view {
|
|
495
509
|
padding: 0 30rpx;
|
|
510
|
+
&:last-child {
|
|
511
|
+
margin-right: 0!important;
|
|
512
|
+
}
|
|
513
|
+
|
|
496
514
|
}
|
|
497
515
|
|
|
498
516
|
& > view {
|