jufubao-base 1.0.158 → 1.0.159-beta2

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.
Files changed (84) hide show
  1. package/package.json +1 -1
  2. package/src/common/authorize.js +201 -70
  3. package/src/components/JfbBaseAddress/JfbBaseAddress.vue +7 -6
  4. package/src/components/JfbBaseAfterOrderDetail/JfbBaseAfterOrderDetail.vue +5 -3
  5. package/src/components/JfbBaseAfterOrderList/JfbBaseAfterOrderList.vue +3 -2
  6. package/src/components/JfbBaseBack/JfbBaseBack.vue +10 -8
  7. package/src/components/JfbBaseBackground/JfbBaseBackground.vue +3 -2
  8. package/src/components/JfbBaseBlock/JfbBaseBlock.vue +3 -2
  9. package/src/components/JfbBaseCard/JfbBaseCard.vue +8 -4
  10. package/src/components/JfbBaseCardBindV2/JfbBaseCardBindV2.vue +57 -26
  11. package/src/components/JfbBaseCardDetail/JfbBaseCardDetail.vue +14 -15
  12. package/src/components/JfbBaseCardDetailEntry/Attr.js +22 -0
  13. package/src/components/JfbBaseCardDetailEntry/JfbBaseCardDetailEntry.vue +361 -425
  14. package/src/components/JfbBaseCardDisabled/JfbBaseCardDisabled.vue +4 -4
  15. package/src/components/JfbBaseCardDisabledEntry/JfbBaseCardDisabledEntry.vue +7 -9
  16. package/src/components/JfbBaseCardEntry/Attr.js +22 -1
  17. package/src/components/JfbBaseCardEntry/JfbBaseCardEntry.vue +81 -34
  18. package/src/components/JfbBaseCardInfo/JfbBaseCardInfo.vue +35 -19
  19. package/src/components/JfbBaseCardInfoEntry/JfbBaseCardInfoEntry.vue +8 -4
  20. package/src/components/JfbBaseCardMerge/JfbBaseCardMerge.vue +4 -3
  21. package/src/components/JfbBaseCardMergeEntry/JfbBaseCardMergeEntry.vue +23 -18
  22. package/src/components/JfbBaseCardShift/JfbBaseCardShift.vue +4 -11
  23. package/src/components/JfbBaseCardShiftEntry/JfbBaseCardShiftEntry.vue +16 -19
  24. package/src/components/JfbBaseCardSweepInfo/JfbBaseCardSweepInfo.vue +3 -2
  25. package/src/components/JfbBaseCardV2/JfbBaseCardV2.vue +34 -18
  26. package/src/components/JfbBaseCardV3/JfbBaseCardV3.vue +14 -14
  27. package/src/components/JfbBaseCity/JfbBaseCity.vue +3 -2
  28. package/src/components/JfbBaseClear/JfbBaseClear.vue +3 -2
  29. package/src/components/JfbBaseConList/JfbBaseConList.vue +3 -2
  30. package/src/components/JfbBaseConPhone/JfbBaseConPhone.vue +3 -2
  31. package/src/components/JfbBaseEntry/Attr.js +22 -0
  32. package/src/components/JfbBaseEntry/JfbBaseEntry.vue +80 -16
  33. package/src/components/JfbBaseExpressDetail/JfbBaseExpressDetail.vue +3 -4
  34. package/src/components/JfbBaseFastLink/JfbBaseFastLink.vue +31 -20
  35. package/src/components/JfbBaseFastLink/XdFastNav.vue +2 -2
  36. package/src/components/JfbBaseFooter/JfbBaseFooter.vue +0 -1
  37. package/src/components/JfbBaseHeader/JfbBaseHeader.vue +3 -2
  38. package/src/components/JfbBaseLogin/JfbBaseLogin.vue +16 -6
  39. package/src/components/JfbBaseLoginForgetPwd/JfbBaseLoginForgetPwd.vue +7 -9
  40. package/src/components/JfbBaseLoginSetPwd/JfbBaseLoginSetPwd.vue +6 -6
  41. package/src/components/JfbBaseMapOverlay/JfbBaseMapOverlay.vue +19 -5
  42. package/src/components/JfbBaseMapOverlay/XdMapOverlay.vue +52 -37
  43. package/src/components/JfbBaseMapSearch/JfbBaseMapSearch.vue +3 -2
  44. package/src/components/JfbBaseMergeUserCard/JfbBaseMergeUserCard.vue +28 -27
  45. package/src/components/JfbBaseMultipleExpress/JfbBaseMultipleExpress.vue +5 -5
  46. package/src/components/JfbBaseMy/JfbBaseMy.vue +3 -3
  47. package/src/components/JfbBaseMySetting/JfbBaseMySetting.vue +6 -4
  48. package/src/components/JfbBaseNotice/Attr.js +0 -2
  49. package/src/components/JfbBaseNotice/JfbBaseNotice.vue +36 -14
  50. package/src/components/JfbBaseNotice/XdNoticeBar.vue +17 -1
  51. package/src/components/JfbBaseNoticeBottom/JfbBaseNoticeBottom.vue +3 -2
  52. package/src/components/JfbBaseNoticeTop/JfbBaseNoticeTop.vue +3 -2
  53. package/src/components/JfbBaseOrderDetail/JfbBaseOrderDetail.vue +5 -4
  54. package/src/components/JfbBaseOrderList/JfbBaseOrderList.vue +4 -3
  55. package/src/components/JfbBasePay/JfbBasePay.vue +3 -2
  56. package/src/components/JfbBasePhoneCollect/JfbBasePhoneCollect.vue +12 -7
  57. package/src/components/JfbBasePhoneLogin/JfbBasePhoneLogin.vue +13 -7
  58. package/src/components/JfbBasePoster/JfbBasePoster.vue +118 -18
  59. package/src/components/JfbBasePoster/MoreScreen.vue +155 -37
  60. package/src/components/JfbBasePosterBigSmall/Attr.js +1 -4
  61. package/src/components/JfbBasePosterBigSmall/JfbBasePosterBigSmall.vue +191 -67
  62. package/src/components/JfbBasePosterEntry/JfbBasePosterEntry.vue +90 -20
  63. package/src/components/JfbBasePosterType/FourScreen.vue +162 -18
  64. package/src/components/JfbBasePosterType/JfbBasePosterType.vue +0 -35
  65. package/src/components/JfbBaseRecharge/JfbBaseRecharge.vue +4 -4
  66. package/src/components/JfbBaseRechargeOrder/JfbBaseRechargeOrder.vue +3 -4
  67. package/src/components/JfbBaseRechargeOrderDetail/JfbBaseRechargeOrderDetail.vue +4 -7
  68. package/src/components/JfbBaseRechargeSuccess/JfbBaseRechargeSuccess.vue +6 -9
  69. package/src/components/JfbBaseSearch/JfbBaseSearch.vue +3 -2
  70. package/src/components/JfbBaseSuccess/JfbBaseSuccess.vue +2 -1
  71. package/src/components/JfbBaseUserCenter/JfbBaseUserCenter.vue +3 -2
  72. package/src/components/JfbBaseUserInfo/JfbBaseUserInfo.vue +5 -3
  73. package/src/components/JfbBaseUserOrder/JfbBaseUserOrder.vue +4 -3
  74. package/src/components/JfbBaseVideo/JfbBaseVideo.vue +14 -11
  75. package/src/components/JfbBaseVideo/XdVideo.vue +0 -4
  76. package/src/components/JfbBaseWallet/JfbBaseWallet.vue +3 -2
  77. package/src/components/JfbBaseWalletDetail/JfbBaseWalletDetail.vue +5 -8
  78. package/src/components/JfbBaseWalletEffective/JfbBaseWalletEffective.vue +5 -8
  79. package/src/components/JfbBaseWalletIndex/JfbBaseWalletIndex.vue +7 -17
  80. package/src/components/JfbBaseWalletItem/JfbBaseWalletItem.vue +13 -21
  81. package/src/components/JfbBaseWebview/JfbBaseWebview.vue +4 -3
  82. package/src/components/JfbBaseWxAuthorize/JfbBaseWxAuthorize.vue +5 -4
  83. package/src/components/JfbBaseWxAuthorizeError/JfbBaseWxAuthorizeError.vue +3 -4
  84. package/src/mixins/colorCardMixins.js +1 -1
@@ -51,7 +51,14 @@
51
51
  </view>
52
52
  </swiper-item>
53
53
  </swiper>
54
- <xd-notice-bar v-else :key="speedKey" scrollable :speed="speed" background-color="rgba(0,0,0,0)">
54
+ <xd-notice-bar
55
+ :class="{isMp:isMp}"
56
+ v-else
57
+ :key="speedKey"
58
+ scrollable
59
+ :speed="speed"
60
+ background-color="rgba(0,0,0,0)"
61
+ >
55
62
  <view
56
63
  v-for="item in contentList"
57
64
  class="jfb-base-notice__body-scroll-content"
@@ -212,13 +219,17 @@
212
219
 
213
220
  backgroundColor: '',
214
221
  is_hide_dailog:'N',
222
+
223
+ isMp:false
215
224
  }
216
225
  },
217
226
  watch: {
218
- container(value,oloValue) {
219
- if(JSON.stringify(value) === JSON.stringify(oloValue)) return;
220
- this.init(this.container);
221
- if (this.$configProject['isPreview']) this.onJfbLoad()
227
+ container(value,oldValue) {
228
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
229
+ if (this.$configProject['isPreview']) {
230
+ this.init(value) ;
231
+ this.onJfbLoad()
232
+ }
222
233
  },
223
234
  num(){
224
235
  if (this.$configProject['isPreview']) this.onJfbLoad()
@@ -235,7 +246,13 @@
235
246
  this.speedKey = Date.now()
236
247
  }, 400)
237
248
 
238
- }
249
+ },
250
+ is_hide_dailog(value){
251
+ if(value === 'N') {
252
+ storage.remove(this.containerId);
253
+ this.onJfbLoad();
254
+ }
255
+ },
239
256
  },
240
257
  computed:{
241
258
  marginUi() {
@@ -281,18 +298,14 @@
281
298
  return this.num > 1
282
299
  },
283
300
 
284
- is_hide_dailog(value){
285
- if(value === 'N') {
286
- storage.remove(this.containerId);
287
- this.onJfbLoad();
288
- }
289
- },
290
-
291
301
  },
292
302
  created() {
293
303
  this.backgroundColor = Color(this.warningColor).alpha(0.2).toString();
294
304
  this.isPreview = this.$configProject['isPreview'];
295
305
  this.init(this.container);
306
+ //#ifdef MP-WEIXIN
307
+ this.isMp = true;
308
+ //#endif
296
309
  },
297
310
  methods: {
298
311
 
@@ -324,7 +337,12 @@
324
337
 
325
338
  if(this.style === '2') {
326
339
  this.num = getContainerPropsValue(container, 'content.num', 1);
340
+ //#ifdef H5
327
341
  this.speed = Number(getContainerPropsValue(container, 'content.speed', 30));
342
+ //#endif
343
+ //#ifdef MP-WEIXIN
344
+ this.speed = Number(getContainerPropsValue(container, 'content.speed', 30))/2.5;
345
+ //#endif
328
346
  }
329
347
  else this.num = 1;
330
348
  this.is_hide_dailog = getContainerPropsValue(container, 'content.is_hide_dailog', 'N');
@@ -334,7 +352,7 @@
334
352
  console.log('this.time', this.time * 60 + '分钟');
335
353
  storage.set(this.containerId, 1, this.time);
336
354
  this.$xdConfirm({
337
- $vm: this,
355
+ styles: this.styles,
338
356
  title: this.title || this.ajaxTitle,
339
357
  content: this.content,
340
358
  isHtml: true,
@@ -518,6 +536,10 @@
518
536
  overflow-y: auto;
519
537
  margin: unit(40, rpx) unit(10, rpx) unit(20, rpx);
520
538
  }
539
+
521
540
  }
522
541
  }
542
+ .isMp {
543
+ width: 100%;
544
+ }
523
545
  </style>
@@ -1,5 +1,10 @@
1
1
  <template>
2
- <view v-if="show" class="uni-noticebar" @click="onClick">
2
+ <view
3
+ v-if="show"
4
+ class="uni-noticebar"
5
+ @click="onClick"
6
+ :class="{isMp:isMp}"
7
+ >
3
8
  <!-- #ifdef MP-ALIPAY -->
4
9
  <view
5
10
  v-if="showClose === true || showClose === 'true'"
@@ -222,6 +227,8 @@
222
227
 
223
228
  uiColor: '', //文字颜色
224
229
  uiBackgroundColor: '', //背景颜色
230
+
231
+ isMp: false,
225
232
  }
226
233
  },
227
234
 
@@ -238,6 +245,10 @@
238
245
  })
239
246
  // #endif
240
247
 
248
+ //#ifdef MP-WEIXIN
249
+ this.isMp = true;
250
+ //#endif
251
+
241
252
  this.$nextTick(() => {
242
253
  this.initSize()
243
254
  })
@@ -290,6 +301,7 @@
290
301
  this.animationDuration = `${item.width / this.speed}s`
291
302
  }
292
303
  if(item.key === 'box') {
304
+
293
305
  this.boxWidth = item.width;
294
306
  this.animationDelay = `0.5s`
295
307
  }
@@ -516,4 +528,8 @@
516
528
  transform: translate3d(-100%, 0, 0);
517
529
  }
518
530
  }
531
+
532
+ .isMp {
533
+ width: 100%;
534
+ }
519
535
  </style>
@@ -38,8 +38,9 @@
38
38
  }
39
39
  },
40
40
  watch: {
41
- container(value) {
42
- this.init(value)
41
+ container(value,oldValue) {
42
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
43
+ if (this.$configProject['isPreview']) this.init(value)
43
44
  }
44
45
  },
45
46
  created() {
@@ -39,8 +39,9 @@
39
39
  }
40
40
  },
41
41
  watch: {
42
- container(value) {
43
- this.init(value)
42
+ container(value,oldValue) {
43
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
44
+ if (this.$configProject['isPreview']) this.init(value)
44
45
  }
45
46
  },
46
47
  created() {
@@ -858,8 +858,9 @@ export default {
858
858
  };
859
859
  },
860
860
  watch: {
861
- container(value) {
862
- this.init(value);
861
+ container(value,oldValue) {
862
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
863
+ if (this.$configProject['isPreview']) this.init(value)
863
864
  },
864
865
  viewStatus(n, o) {
865
866
  if (this.isPreview) {
@@ -1195,7 +1196,7 @@ export default {
1195
1196
  uni.setClipboardData({
1196
1197
  data: text,
1197
1198
  success: () => {
1198
- this.$xdAlert({ content: "复制成功" });
1199
+ //this.$xdAlert({ content: "复制成功" });
1199
1200
  },
1200
1201
  });
1201
1202
  // #endif
@@ -1254,7 +1255,7 @@ export default {
1254
1255
  });
1255
1256
  } else {
1256
1257
  this.$xdConfirm({
1257
- $vm: this,
1258
+ styles: this.styles,
1258
1259
  content: "是否取消订单",
1259
1260
  success: (action) => {
1260
1261
  if (action.confirm) {
@@ -285,8 +285,9 @@ export default {
285
285
  },
286
286
  },
287
287
  watch: {
288
- container(value) {
289
- this.init(value);
288
+ container(value,oldValue) {
289
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
290
+ if (this.$configProject['isPreview']) this.init(value)
290
291
  },
291
292
  },
292
293
  created() {
@@ -389,7 +390,7 @@ export default {
389
390
 
390
391
  cancelUnPayOrder(main_order_id) {
391
392
  this.$xdConfirm({
392
- $vm: this,
393
+ styles: this.styles,
393
394
  content: "是否取消订单?",
394
395
  success: (res) => {
395
396
  if (res.confirm) {
@@ -216,8 +216,9 @@ export default {
216
216
  };
217
217
  },
218
218
  watch: {
219
- container(value) {
220
- this.init(value);
219
+ container(value,oldValue) {
220
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
221
+ if (this.$configProject['isPreview']) this.init(value)
221
222
  },
222
223
  },
223
224
  computed: {
@@ -13,9 +13,7 @@
13
13
  :class="{ editx: isEditx && active }"
14
14
  v-if="isEditx && active && !noBorder"
15
15
  >
16
- <view class="jfb-base-phone-collect__edit-icon" @click="delEdit"
17
- >删除</view
18
- >
16
+ <view class="jfb-base-phone-collect__edit-icon" @click="delEdit">删除</view>
19
17
  </view>
20
18
  <!-- #endif -->
21
19
  <view class="jfb-base-phone-collect__body">
@@ -57,7 +55,7 @@
57
55
  :localdata="[{ value: 1, text: '登录即同意《隐私政策》《用户服务协议》' },]"
58
56
  >
59
57
  <template slot="a1">
60
- <view>
58
+ <view class="text-content">
61
59
  <text>请阅读并同意</text>
62
60
  <text @click.stop="handlePrivacy('privacy_privacy')" :style="{color: mainColor}">《隐私政策》</text>
63
61
  <text @click.stop="handlePrivacy('privacy_service')" :style="{color: mainColor}">《用户服务协议》</text>
@@ -125,7 +123,6 @@ export default {
125
123
  interval: null,
126
124
  provider_id: "",
127
125
  callback_url: "",
128
- //todo
129
126
  };
130
127
  },
131
128
  computed: {
@@ -134,8 +131,9 @@ export default {
134
131
  },
135
132
  },
136
133
  watch: {
137
- container(value) {
138
- this.init(value);
134
+ container(value,oldValue) {
135
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
136
+ if (this.$configProject['isPreview']) this.init(value)
139
137
  },
140
138
  "accountForm.verification_code"(value) {
141
139
  if (value && value.length >= 8 && value.length % 2 === 0) {
@@ -330,4 +328,11 @@ export default {
330
328
  .align-center {
331
329
  align-items: center;
332
330
  }
331
+ /* #ifdef MP-WEIXIN */
332
+ .text-content {
333
+ & > text {
334
+ font-size: 26rpx;
335
+ }
336
+ }
337
+ /* #endif */
333
338
  </style>
@@ -17,9 +17,7 @@
17
17
  </view>
18
18
  <!-- #endif -->
19
19
  <view class="jfb-base-phone-login__body">
20
- <view
21
- class="panel-login-password"
22
- >
20
+ <view class="panel-login-password">
23
21
  <xd-form label-width="128"
24
22
  style="margin-top: 40rpx;"
25
23
  label-align="right"
@@ -61,7 +59,7 @@
61
59
  :localdata="[{value: 1, text: '登录即同意《隐私政策》《用户服务协议》'}]"
62
60
  >
63
61
  <template slot="a1">
64
- <view>
62
+ <view class="text-content">
65
63
  <text>请阅读并同意</text>
66
64
  <text @click.stop="handlePrivacy('privacy_privacy')" :style="{color: mainColor}">《隐私政策》</text>
67
65
  <text @click.stop="handlePrivacy('privacy_service')" :style="{color: mainColor}">《用户服务协议》</text>
@@ -133,8 +131,9 @@
133
131
  }
134
132
  },
135
133
  watch: {
136
- container(value) {
137
- this.init(value)
134
+ container(value,oldValue) {
135
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
136
+ if (this.$configProject['isPreview']) this.init(value)
138
137
  },
139
138
  "accountForm.verification_code"(value) {
140
139
  if (value && value.length >= 8 && value.length % 2 === 0) {
@@ -167,7 +166,7 @@
167
166
  * @description 监听事件变化
168
167
  * @param container {object} 业务组件对象自己
169
168
  */
170
- init(value) {
169
+ init(container) {
171
170
  //this.bgcolor = getContainerPropsValue(value, 'content.bgcolor', '#fff');
172
171
  //this.height = getContainerPropsValue(value, 'content.height', 10);
173
172
  },
@@ -362,4 +361,11 @@
362
361
  .align-center{
363
362
  align-items: center;
364
363
  }
364
+ /* #ifdef MP-WEIXIN */
365
+ .text-content {
366
+ & > text {
367
+ font-size: 26rpx;
368
+ }
369
+ }
370
+ /* #endif */
365
371
  </style>
@@ -15,7 +15,6 @@
15
15
  <!-- #endif -->
16
16
  <view class="jfb-base-poster__body" v-if="noData">
17
17
  <view class="x-line"></view>
18
-
19
18
  <view class="jfb-base-poster-cont" :style="getBodyStyle">
20
19
  <!--一分屏-->
21
20
  <template v-if="posterType === '1'">
@@ -50,6 +49,7 @@
50
49
  }"
51
50
  >
52
51
  <xd-swiper-dot
52
+ :style="{width: getOneWidth + 'rpx', height: getOneHeight + 'rpx'}"
53
53
  v-if="pageSwiperShow"
54
54
  :current="current"
55
55
  :info="info"
@@ -57,6 +57,24 @@
57
57
  :mode="mode"
58
58
  :dots-styles="dotStyleData"
59
59
  >
60
+ <!--#ifdef MP-WEIXIN-->
61
+ <swiper
62
+ class="swiper xd-swiper-content"
63
+ :style="{width: getOneWidth + 'rpx', height: getOneHeight + 'rpx'}"
64
+ :indicator-dots="false"
65
+ :autoplay="carouselTime>0"
66
+ :interval="carouselTime"
67
+ :duration="500"
68
+ :current="current"
69
+ circular
70
+ @animationfinish="handleAnimationfinish"
71
+ >
72
+ <swiper-item v-for="(item,index) in info" :key="index" @click.stop="handleClick(item,index)">
73
+ <image :style="{width: getOneWidth + 'rpx', height: getOneHeight + 'rpx'}" :src="item['image_url']" mode="aspectFill"></image>
74
+ </swiper-item>
75
+ </swiper>
76
+ <!--#endif-->
77
+ <!--#ifdef H5-->
60
78
  <xd-swiper
61
79
  :indicator-dots="false"
62
80
  :list="info"
@@ -71,6 +89,7 @@
71
89
  <image :src="item['image_url']" mode="aspectFill"></image>
72
90
  </template>
73
91
  </xd-swiper>
92
+ <!--#endif-->
74
93
  </xd-swiper-dot>
75
94
  <view v-if="isPreview" class="carousel-mask"></view>
76
95
  </view>
@@ -78,6 +97,7 @@
78
97
  <!--一分屏-->
79
98
  <!--多分屏-->
80
99
  <more-screen
100
+ style="width: 100%; height: 100%"
81
101
  v-if="posterType !== '1'"
82
102
  :config="getConfig"
83
103
  :content="info"
@@ -158,11 +178,11 @@
158
178
  backgroundSize: '100%',
159
179
  backgroundRepeat: 'no-repeat',
160
180
  }
161
- return {
162
- ...image,
181
+ image = Object.assign({},image,{
163
182
  margin: this.margin,
164
183
  padding: this.outPadding
165
- }
184
+ })
185
+ return this.styleObjectToString(image)
166
186
  },
167
187
  getOneWidth(){
168
188
  let margin = this.checkValue(this.mS.left, 0) + this.checkValue(this.mS.right, 0);
@@ -332,9 +352,9 @@
332
352
  },
333
353
  },
334
354
  created() {
335
- this.init(this.container);
336
355
  this.isPreview = this.$configProject.isPreview;
337
356
  this.pageSwiperShow = this.$root.$isShow;
357
+ this.init(this.container);
338
358
  },
339
359
 
340
360
  destroyed() {
@@ -345,6 +365,63 @@
345
365
  },
346
366
 
347
367
  methods: {
368
+ /**
369
+ * @description 过滤不可以用
370
+ * 当前项目未H5时,过滤所有小程序应用
371
+ * 当前项目未小程序时,过滤所有非当前小程序应用
372
+ * 站外地址直接返回
373
+ * 站内地址未选值直接返回
374
+ * 预览模式全过
375
+ */
376
+ filterItem(list){
377
+ let content = list.filter(item=>{
378
+ //预览模式
379
+ if( this.$configProject.isPreview) return true;
380
+
381
+ //非内部应用
382
+ if(item.redirect_type !== 'INN') return true
383
+
384
+ //没有配置链接
385
+ if(!item.redirect_data) return true;
386
+
387
+ //内部应用
388
+ else {
389
+ let redirect_data;
390
+ try {
391
+ redirect_data = JSON.parse(item.redirect_data);
392
+ if(!item['app_type']) item['app_type']= 'h5';
393
+
394
+ //#ifdef H5
395
+ return item['app_type'] !== 'wxmp';
396
+ //#endif
397
+
398
+ //#ifdef MP-WEIXIN
399
+ let actDir = this.$parent.projectAttr.deploy_dir;
400
+ let dir = this.getPathDir(redirect_data.page);
401
+ if(item['app_type'] === 'wxmp'){
402
+ return actDir === dir;
403
+ }
404
+ else if(item['app_type'] === 'h5') return true;
405
+ else return true
406
+ //#endif
407
+ }
408
+ catch (e) {
409
+ return true
410
+ }
411
+ }
412
+ });
413
+ console.warn(`PostersList:${JSON.stringify(content.map(item=>`${item.app_type}:${item.content_name}:${item.redirect_data}`), null,2)}`)
414
+ return content;
415
+
416
+ },
417
+
418
+ getPathDir(pathDir){
419
+ if(pathDir.indexOf('@site_domain@/') === 0) {
420
+ return pathDir.replace('@site_domain@/','').split('/')[0]
421
+ }
422
+ return ''
423
+ },
424
+
348
425
  getTestData(){
349
426
  let temp = [];
350
427
  for (let i = 0; i< this.useNumber; i++) {
@@ -382,52 +459,70 @@
382
459
  this.current = e.detail.current;
383
460
  }
384
461
  },
462
+
385
463
  handleClick(item) {
464
+ if(!item.redirect_data) {
465
+ console.warn(`未配置链接地址: ${item.redirect_data}`);
466
+ console.error(`未配置链接地址: ${item.redirect_data}`);
467
+ return
468
+ }
469
+
386
470
  //内部链接跳转地址
387
471
  if (item.redirect_type === 'INN') {
388
472
  try {
389
473
  let url = JSON.parse(item.redirect_data);
390
474
  let params = '';
391
- if (item['redirect_params']) params = `?${item['redirect_params']}`;
392
- this.$xdUniHelper.navigateTo({
393
- url: url.page + params
394
- })
475
+ if(url.page) {
476
+ if (item['redirect_params']) params = `?${item['redirect_params']}`;
477
+ this.$xdUniHelper.navigateTo({url: url.page + params})
478
+ }
479
+ else {
480
+ console.error(`应用链接配置错误: ${url.page}`)
481
+ }
395
482
  } catch (e) {
396
- console.error(e)
483
+ console.error(`应用链接配置错误: ${item.redirect_data}`)
397
484
  }
398
485
  }
399
486
 
400
487
  //外部链接
401
488
  if (item.redirect_type === 'URL') {
402
489
  let reg = /^(http:\/\/|https:\/\/|\/\/)+.+$/;
490
+ let spReg = /(-apiuri\/v)/;
403
491
  //#ifdef MP-WEIXIN
404
492
  try {
405
493
  let url = JSON.parse(item.redirect_data);
406
- if (reg.test(url.url) && this.$configProject.extras.webview) {
494
+ if (reg.test(url.url) || spReg.test(url.url)) {
407
495
  console.warn(`广告跳转外站: ${url.url}`)
408
- this.$xdUniHelper.navigateTo({
409
- url: `${this.$configProject.extras.webview}?seatUrl=${Base64.encodeURI(url.url)}`
410
- });
496
+ this.$xdUniHelper.navigateTo(url);
411
497
  } else {
412
- throw Error('地址错误')
498
+ console.error(`广告跳转外站配置错误: ${url.url}`)
413
499
  }
414
500
  } catch (e) {
415
- console.error(e)
501
+ console.error(`广告跳转外站配置错误: ${item.redirect_data}`)
416
502
  }
417
503
  //#endif
418
504
  //#ifdef H5
419
505
  try {
420
506
  let url = JSON.parse(item.redirect_data);
421
507
  console.warn(`广告跳转外站: ${url.url}`);
422
- this.$xdUniHelper.navigateTo(url)
508
+ this.$xdUniHelper.redirectTo(url, false)
423
509
  } catch (e) {
424
- console.error(e)
510
+ console.error(`广告跳转外站配置错误: ${item.redirect_data}`)
425
511
  }
426
512
  //#endif
427
513
 
428
514
  }
515
+
516
+ //无跳转地址
517
+ if(item.redirect_type === 'EMP') {
518
+ console.warn(`无跳转地址`);
519
+ }
429
520
  },
521
+
522
+
430
523
  handleImage(list){
524
+ list = this.filterItem(list);
525
+
431
526
  return list.map((item,index) => {
432
527
  return {
433
528
  ...item,
@@ -463,6 +558,11 @@
463
558
  this.isCarousel = getContainerPropsValue(container, 'content.isCarousel', 1);
464
559
  this.radius = getContainerPropsValue(container, 'content.radius', 0);
465
560
  this.padding = getContainerPropsValue(container, 'content.padding', 0);
561
+
562
+ //静态图,一分屏并且间距为0设置
563
+ if(this.isCarousel === 1 && this.posterType === '1' && this.padding === 0) {
564
+ this.padding = 20;
565
+ }
466
566
  this.rows = getContainerPropsValue(container, 'content.rows', 1);
467
567
  if(this.posterType === '1' && this.isCarousel === 2) this.isSupport = getContainerPropsValue(container, 'content.isSupport', 'Y');
468
568
  this.mS = getContainerPropsValue(container, 'content.margin', {});