jufubao-base 1.0.159 → 1.0.160-beta1

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 (85) 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 +10 -6
  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 +393 -424
  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 +91 -36
  18. package/src/components/JfbBaseCardInfo/JfbBaseCardInfo.vue +38 -22
  19. package/src/components/JfbBaseCardInfoEntry/Attr.js +22 -0
  20. package/src/components/JfbBaseCardInfoEntry/JfbBaseCardInfoEntry.vue +285 -260
  21. package/src/components/JfbBaseCardMerge/JfbBaseCardMerge.vue +4 -3
  22. package/src/components/JfbBaseCardMergeEntry/JfbBaseCardMergeEntry.vue +23 -18
  23. package/src/components/JfbBaseCardShift/JfbBaseCardShift.vue +4 -11
  24. package/src/components/JfbBaseCardShiftEntry/JfbBaseCardShiftEntry.vue +16 -19
  25. package/src/components/JfbBaseCardSweepInfo/JfbBaseCardSweepInfo.vue +3 -2
  26. package/src/components/JfbBaseCardV2/JfbBaseCardV2.vue +34 -18
  27. package/src/components/JfbBaseCardV3/JfbBaseCardV3.vue +14 -14
  28. package/src/components/JfbBaseCity/JfbBaseCity.vue +3 -2
  29. package/src/components/JfbBaseClear/JfbBaseClear.vue +3 -2
  30. package/src/components/JfbBaseConList/JfbBaseConList.vue +4 -4
  31. package/src/components/JfbBaseConPhone/JfbBaseConPhone.vue +3 -2
  32. package/src/components/JfbBaseEntry/Attr.js +22 -0
  33. package/src/components/JfbBaseEntry/JfbBaseEntry.vue +84 -20
  34. package/src/components/JfbBaseExpressDetail/JfbBaseExpressDetail.vue +3 -4
  35. package/src/components/JfbBaseFastLink/JfbBaseFastLink.vue +33 -22
  36. package/src/components/JfbBaseFastLink/XdFastNav.vue +2 -2
  37. package/src/components/JfbBaseFooter/JfbBaseFooter.vue +0 -1
  38. package/src/components/JfbBaseHeader/JfbBaseHeader.vue +3 -2
  39. package/src/components/JfbBaseLogin/JfbBaseLogin.vue +28 -11
  40. package/src/components/JfbBaseLoginForgetPwd/JfbBaseLoginForgetPwd.vue +7 -9
  41. package/src/components/JfbBaseLoginSetPwd/JfbBaseLoginSetPwd.vue +9 -6
  42. package/src/components/JfbBaseMapOverlay/JfbBaseMapOverlay.vue +19 -5
  43. package/src/components/JfbBaseMapOverlay/XdMapOverlay.vue +52 -37
  44. package/src/components/JfbBaseMapSearch/JfbBaseMapSearch.vue +3 -2
  45. package/src/components/JfbBaseMergeUserCard/JfbBaseMergeUserCard.vue +28 -27
  46. package/src/components/JfbBaseMultipleExpress/JfbBaseMultipleExpress.vue +5 -5
  47. package/src/components/JfbBaseMy/JfbBaseMy.vue +3 -3
  48. package/src/components/JfbBaseMySetting/JfbBaseMySetting.vue +6 -4
  49. package/src/components/JfbBaseNotice/Attr.js +0 -2
  50. package/src/components/JfbBaseNotice/JfbBaseNotice.vue +36 -14
  51. package/src/components/JfbBaseNotice/XdNoticeBar.vue +17 -1
  52. package/src/components/JfbBaseNoticeBottom/JfbBaseNoticeBottom.vue +3 -2
  53. package/src/components/JfbBaseNoticeTop/JfbBaseNoticeTop.vue +3 -2
  54. package/src/components/JfbBaseOrderDetail/JfbBaseOrderDetail.vue +20 -31
  55. package/src/components/JfbBaseOrderList/JfbBaseOrderList.vue +9 -4
  56. package/src/components/JfbBasePay/JfbBasePay.vue +3 -2
  57. package/src/components/JfbBasePhoneCollect/JfbBasePhoneCollect.vue +22 -7
  58. package/src/components/JfbBasePhoneLogin/JfbBasePhoneLogin.vue +23 -7
  59. package/src/components/JfbBasePoster/JfbBasePoster.vue +118 -18
  60. package/src/components/JfbBasePoster/MoreScreen.vue +155 -37
  61. package/src/components/JfbBasePosterBigSmall/Attr.js +2 -5
  62. package/src/components/JfbBasePosterBigSmall/JfbBasePosterBigSmall.vue +191 -67
  63. package/src/components/JfbBasePosterEntry/JfbBasePosterEntry.vue +90 -20
  64. package/src/components/JfbBasePosterType/FourScreen.vue +162 -18
  65. package/src/components/JfbBasePosterType/JfbBasePosterType.vue +0 -35
  66. package/src/components/JfbBaseRecharge/JfbBaseRecharge.vue +4 -4
  67. package/src/components/JfbBaseRechargeOrder/JfbBaseRechargeOrder.vue +3 -4
  68. package/src/components/JfbBaseRechargeOrderDetail/JfbBaseRechargeOrderDetail.vue +4 -7
  69. package/src/components/JfbBaseRechargeSuccess/JfbBaseRechargeSuccess.vue +6 -9
  70. package/src/components/JfbBaseSearch/JfbBaseSearch.vue +3 -2
  71. package/src/components/JfbBaseSuccess/JfbBaseSuccess.vue +5 -4
  72. package/src/components/JfbBaseUserCenter/JfbBaseUserCenter.vue +3 -2
  73. package/src/components/JfbBaseUserInfo/JfbBaseUserInfo.vue +5 -3
  74. package/src/components/JfbBaseUserOrder/JfbBaseUserOrder.vue +4 -3
  75. package/src/components/JfbBaseVideo/JfbBaseVideo.vue +14 -11
  76. package/src/components/JfbBaseVideo/XdVideo.vue +0 -4
  77. package/src/components/JfbBaseWallet/JfbBaseWallet.vue +3 -2
  78. package/src/components/JfbBaseWalletDetail/JfbBaseWalletDetail.vue +5 -8
  79. package/src/components/JfbBaseWalletEffective/JfbBaseWalletEffective.vue +5 -8
  80. package/src/components/JfbBaseWalletIndex/JfbBaseWalletIndex.vue +7 -17
  81. package/src/components/JfbBaseWalletItem/JfbBaseWalletItem.vue +13 -21
  82. package/src/components/JfbBaseWebview/JfbBaseWebview.vue +4 -3
  83. package/src/components/JfbBaseWxAuthorize/JfbBaseWxAuthorize.vue +5 -4
  84. package/src/components/JfbBaseWxAuthorizeError/JfbBaseWxAuthorizeError.vue +3 -4
  85. package/src/mixins/colorCardMixins.js +1 -1
@@ -37,8 +37,54 @@
37
37
  field="content_name"
38
38
  :mode="config.mode"
39
39
  :dots-styles="config.dotStyleData"
40
- :style="{height: (getHeight) + 'px'}"
40
+ :style="{height: (getHeight) + 'px', width:'100%'}"
41
41
  >
42
+ <!--#ifdef MP-WEIXIN-->
43
+ <swiper
44
+ class="swiper xd-swiper-content"
45
+ :style="{width: '100%', height: getHeight + 'px'}"
46
+ :indicator-dots="false"
47
+ :autoplay="config.carouselTime > 0"
48
+ :interval="config.carouselTime"
49
+ :duration="500"
50
+ :current="current"
51
+ circular
52
+ @animationfinish="handleAnimationfinish"
53
+ >
54
+ <swiper-item
55
+ v-for="(item,index) in list"
56
+ :key="index"
57
+ :style="{width: '100%', height: getHeight + 'px'}"
58
+ >
59
+ <view
60
+ class="sreen__box-list"
61
+ :class="{
62
+ cell4: config.cells === 4,
63
+ cell5: config.cells === 5,
64
+ }"
65
+ :style="{ height: getHeight + 'px'}"
66
+ >
67
+ <view
68
+ v-for="it in item"
69
+ :key="it['content_id']"
70
+ :style="{height: boxHeight + 'px'}"
71
+ @click="handleClick(it)"
72
+ >
73
+ <view :style="{ height: height + 'px'}">
74
+ <view :style="{
75
+ borderRadius: config.radius + 'rpx',
76
+ boxShadow: config.shadow === 1? `0 0 10rpx rgba(0, 0, 0, .5)` : '',
77
+ }">
78
+ <image :src="it.image_url"></image>
79
+ </view>
80
+ </view>
81
+ <view v-if="it['content_name']" :style="{color: config.textColor}">{{it['content_name']}}</view>
82
+ </view>
83
+ </view>
84
+ </swiper-item>
85
+ </swiper>
86
+ <!--#endif-->
87
+ <!--#ifdef H5-->
42
88
  <xd-swiper
43
89
  :indicator-dots="false"
44
90
  :interval="config.carouselTime"
@@ -81,6 +127,7 @@
81
127
  </view>
82
128
  </template>
83
129
  </xd-swiper>
130
+ <!--#endif-->
84
131
  </xd-swiper-dot>
85
132
  </view>
86
133
  </view>
@@ -115,12 +162,27 @@
115
162
  padding: 0,
116
163
  status: false,
117
164
  list: [],
165
+ filterContentList:[],
118
166
  isPreview: false,
119
167
  current: 0,
120
168
  }
121
169
  },
122
170
  computed:{
123
171
  getHeight() {
172
+ let len = this.filterContentList.length
173
+
174
+ //数量小于等于2,3行
175
+ if(len <= this.config.cells) {
176
+ return this.height + this.rpxText
177
+ }
178
+
179
+ //三行小于等于两个数量
180
+ if(this.config.jdRows === 3) {
181
+ if(len <= this.config.cells * 2) {
182
+ return this.height * 2 + this.rpxText * 2
183
+ }
184
+ }
185
+
124
186
  return this.height * this.config.jdRows + this.rpxText * this.config.jdRows;
125
187
  },
126
188
  rpxText(){
@@ -147,6 +209,65 @@
147
209
  handleAnimationfinish(e) {
148
210
  this.current = e.detail.current;
149
211
  },
212
+
213
+ /**
214
+ * @description 过滤不可以用
215
+ * 当前项目未H5时,过滤所有小程序应用
216
+ * 当前项目未小程序时,过滤所有非当前小程序应用
217
+ * 站外地址直接返回
218
+ * 站内地址未选值直接返回
219
+ * 预览模式全过
220
+ */
221
+ filterItem(){
222
+ let content = this.content.filter(item=>{
223
+ //预览模式
224
+ if( this.$configProject.isPreview) return true;
225
+
226
+ //非内部应用
227
+ if(item.redirect_type !== 'INN') return true
228
+
229
+ //没有配置链接
230
+ if(!item.redirect_data) return true;
231
+
232
+ //内部应用
233
+ else {
234
+ let redirect_data;
235
+ try {
236
+ redirect_data = JSON.parse(item.redirect_data);
237
+ if(!item['app_type']) item['app_type']= 'h5';
238
+
239
+ //#ifdef H5
240
+ return item['app_type'] !== 'wxmp';
241
+ //#endif
242
+
243
+ //#ifdef MP-WEIXIN
244
+ let actDir = this.$parent.projectAttr.deploy_dir;
245
+ let dir = this.getPathDir(redirect_data.page);
246
+ if(item['app_type'] === 'wxmp'){
247
+ return actDir === dir;
248
+ }
249
+ else if(item['app_type'] === 'h5') return true;
250
+ else return true
251
+ //#endif
252
+ }
253
+ catch (e) {
254
+ return true
255
+ }
256
+ }
257
+ });
258
+ console.warn(`PostTypeLists:${JSON.stringify(content.map(item=>`${item.app_type}:${item.content_name}:${item.redirect_data}`), null,2)}`)
259
+ this.filterContentList = this.$xdUniHelper.cloneDeep(content);
260
+ return content;
261
+
262
+ },
263
+
264
+ getPathDir(pathDir){
265
+ if(pathDir.indexOf('@site_domain@/') === 0) {
266
+ return pathDir.replace('@site_domain@/','').split('/')[0]
267
+ }
268
+ return ''
269
+ },
270
+
150
271
  init() {
151
272
  if (this.timer) clearTimeout(this.timer);
152
273
  this.timer = setTimeout(() => {
@@ -154,19 +275,22 @@
154
275
  this.height = this.config.height;
155
276
  this.padding = 0;
156
277
 
278
+ //过滤不可以用
279
+ const content = this.filterItem();
280
+
157
281
  //静态图显示
158
282
  if(this.config.isCarousel === false) {
159
- this.list = this.content.filter((item,index)=>{
283
+ this.list = content.filter((item,index)=>{
160
284
  return index < (this.config.cells * this.config.jdRows);
161
285
  })
162
286
  }
163
287
  //轮播图显示
164
288
  else {
165
289
  let num = this.config.cells * this.config.jdRows;
166
- let maxPage = Math.ceil(this.content.length / num);
290
+ let maxPage = Math.ceil(content.length / num);
167
291
  let arr = [];
168
292
  for(let i =1 ; i <= maxPage; i++) {
169
- arr.push(this.$xdUniHelper.getLocalPaginationData(this.content, i, num))
293
+ arr.push(this.$xdUniHelper.getLocalPaginationData(content, i, num))
170
294
  }
171
295
  this.list = arr;
172
296
  }
@@ -174,51 +298,64 @@
174
298
 
175
299
  }, 100)
176
300
  },
301
+
177
302
  handleClick(item) {
178
- debugger
303
+ if(!item.redirect_data) {
304
+ console.warn(`未配置链接地址: ${item.redirect_data}`);
305
+ console.error(`未配置链接地址: ${item.redirect_data}`);
306
+ return
307
+ }
308
+
179
309
  //内部链接跳转地址
180
310
  if (item.redirect_type === 'INN') {
181
311
  try {
182
312
  let url = JSON.parse(item.redirect_data);
183
313
  let params = '';
184
- if (item['redirect_params']) params = `?${item['redirect_params']}`;
185
- this.$xdUniHelper.navigateTo({
186
- url: url.page + params
187
- })
314
+ if(url.page) {
315
+ if (item['redirect_params']) params = `?${item['redirect_params']}`;
316
+ this.$xdUniHelper.navigateTo({url: url.page + params})
317
+ }
318
+ else {
319
+ console.error(`应用链接配置错误: ${url.page}`)
320
+ }
188
321
  } catch (e) {
189
- console.error(e)
322
+ console.error(`应用链接配置错误: ${item.redirect_data}`)
190
323
  }
191
324
  }
192
325
 
193
326
  //外部链接
194
327
  if (item.redirect_type === 'URL') {
195
328
  let reg = /^(http:\/\/|https:\/\/|\/\/)+.+$/;
329
+ let spReg = /(-apiuri\/v)/;
196
330
  //#ifdef MP-WEIXIN
197
331
  try {
198
332
  let url = JSON.parse(item.redirect_data);
199
- if (reg.test(url.url) && this.$configProject.extras.webview) {
333
+ if (reg.test(url.url) || spReg.test(url.url)) {
200
334
  console.warn(`广告跳转外站: ${url.url}`)
201
- this.$xdUniHelper.navigateTo({
202
- url: `${this.$configProject.extras.webview}?seatUrl=${Base64.encodeURI(url.url)}`
203
- });
335
+ this.$xdUniHelper.navigateTo(url);
204
336
  } else {
205
- throw Error('地址错误')
337
+ console.error(`广告跳转外站配置错误: ${url.url}`)
206
338
  }
207
339
  } catch (e) {
208
- console.error(e)
340
+ console.error(`广告跳转外站配置错误: ${item.redirect_data}`)
209
341
  }
210
342
  //#endif
211
343
  //#ifdef H5
212
344
  try {
213
345
  let url = JSON.parse(item.redirect_data);
214
346
  console.warn(`广告跳转外站: ${url.url}`);
215
- this.$xdUniHelper.navigateTo(url)
347
+ this.$xdUniHelper.redirectTo(url, false)
216
348
  } catch (e) {
217
- console.error(e)
349
+ console.error(`广告跳转外站配置错误: ${item.redirect_data}`)
218
350
  }
219
351
  //#endif
220
352
 
221
353
  }
354
+
355
+ //无跳转地址
356
+ if(item.redirect_type === 'EMP') {
357
+ console.warn(`无跳转地址`);
358
+ }
222
359
  },
223
360
  }
224
361
  }
@@ -227,6 +364,7 @@
227
364
  <style scoped lang="less">
228
365
  .sreen {
229
366
  width: calc(100% + 2px); /**防止宽度不够问**/
367
+ height: 100%;
230
368
  position: relative;
231
369
 
232
370
  & .carousel-mask {
@@ -241,6 +379,7 @@
241
379
 
242
380
  &__box.notCarousel {
243
381
  width: 100%;
382
+ height: 100%;
244
383
  display: flex;
245
384
  justify-content: flex-start;
246
385
  align-items: flex-start;
@@ -333,6 +472,8 @@
333
472
  }
334
473
 
335
474
  &__box.carousel {
475
+ width: 100%;
476
+ height: 100%;
336
477
  display: flex;
337
478
  justify-content: flex-start;
338
479
  align-items: flex-start;
@@ -341,6 +482,8 @@
341
482
  }
342
483
 
343
484
  & .sreen__box-list {
485
+ width: 100%;
486
+ height: 100%;
344
487
  display: flex;
345
488
  justify-content: flex-start;
346
489
  align-items: flex-start;
@@ -382,6 +525,7 @@
382
525
  & > view:last-child {
383
526
  text-align: center;
384
527
  line-height: 15px;
528
+ font-size: unit(24, rpx);
385
529
  }
386
530
  }
387
531
  }
@@ -131,41 +131,6 @@
131
131
  handleAnimationfinish(e) {
132
132
  this.current = e.detail.current;
133
133
  },
134
- handleClick(item, index){
135
- this.current = index;
136
- const handle = (data) => {
137
- try {
138
- return JSON.parse(data);
139
- } catch (e) {
140
- return {}
141
- }
142
- };
143
- if(this.$configProject.isPreview) {
144
- console.log(item)
145
- }
146
- else {
147
- if (item['redirect_type'] === 'EMP') return;
148
- let url = '';
149
-
150
- if (item['redirect_type'] === 'URL') {
151
- url = handle(item['redirect_data']).url || ''
152
- }
153
-
154
- if (item['redirect_type'] === 'INN') {
155
- url = handle(item['redirect_data']).page || ''
156
- }
157
- if (item['redirect_type'] === 'APP') {
158
- return;
159
- }
160
- if (url === '') {
161
- return;
162
- }
163
-
164
- if(url.indexOf('?') === -1) url = `${url}?vs=${new Date().getTime()}`;
165
- else url = `${url}&vs=${new Date().getTime()}`;
166
- this.$xdUniHelper.navigateTo({url})
167
- }
168
- },
169
134
  handleImage(list){
170
135
  return list.map(item => {
171
136
  return {
@@ -38,8 +38,7 @@
38
38
  :bgColor="mainColor"
39
39
  @click="handleToRecharge"
40
40
  :disabled="!amount || !card_point || !cardNumber"
41
- >提交</xd-button
42
- >
41
+ >提交</xd-button>
43
42
  </view>
44
43
  </view>
45
44
  <view class="xd-notice-content" v-if="content">
@@ -91,8 +90,9 @@ export default {
91
90
  };
92
91
  },
93
92
  watch: {
94
- container(value) {
95
- this.init(value);
93
+ container(value,oldValue) {
94
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
95
+ if (this.$configProject['isPreview']) this.init(value)
96
96
  },
97
97
  card_point(value) {
98
98
  if(this.timer) clearTimeout(this.timer);
@@ -150,8 +150,9 @@ export default {
150
150
  };
151
151
  },
152
152
  watch: {
153
- container(value) {
154
- this.init(value);
153
+ container(value,oldValue) {
154
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
155
+ if (this.$configProject['isPreview']) this.init(value)
155
156
  },
156
157
  },
157
158
  computed: {
@@ -175,8 +176,6 @@ export default {
175
176
  },
176
177
  created() {
177
178
  this.init(this.container);
178
-
179
- //todo
180
179
  },
181
180
  methods: {
182
181
  onJfbLoad(options) {
@@ -10,9 +10,7 @@
10
10
  :class="{ editx: isEditx && active }"
11
11
  v-if="isEditx && active"
12
12
  >
13
- <view class="jfb-base-recharge-order-detail__edit-icon" @click="delEdit"
14
- >删除</view
15
- >
13
+ <view class="jfb-base-recharge-order-detail__edit-icon" @click="delEdit">删除</view>
16
14
  </view>
17
15
  <!-- #endif -->
18
16
  <view v-if="info!==null" class="jfb-base-recharge-order-detail__body">
@@ -81,14 +79,13 @@ export default {
81
79
  };
82
80
  },
83
81
  watch: {
84
- container(value) {
85
- this.init(value);
82
+ container(value,oldValue) {
83
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
84
+ if (this.$configProject['isPreview']) this.init(value)
86
85
  },
87
86
  },
88
87
  created() {
89
88
  this.init(this.container);
90
-
91
- //todo
92
89
  },
93
90
  methods: {
94
91
  onJfbLoad(options) {
@@ -10,9 +10,7 @@
10
10
  :class="{ editx: isEditx && active }"
11
11
  v-if="isEditx && active"
12
12
  >
13
- <view class="jfb-base-recharge-success__edit-icon" @click="delEdit"
14
- >删除</view
15
- >
13
+ <view class="jfb-base-recharge-success__edit-icon" @click="delEdit">删除</view>
16
14
  </view>
17
15
  <!-- #endif -->
18
16
  <view class="jfb-base-recharge-success__body" v-if="info !== null">
@@ -38,9 +36,7 @@
38
36
  @click="handleToBtn(item)"
39
37
  type="primary"
40
38
  :bgColor="mainColor"
41
- >
42
- {{ item.label }}
43
- </xd-button>
39
+ >{{ item.label }}</xd-button>
44
40
  </view>
45
41
  </view>
46
42
  </view>
@@ -73,8 +69,9 @@ export default {
73
69
  };
74
70
  },
75
71
  watch: {
76
- container(value) {
77
- this.init(value);
72
+ container(value,oldValue) {
73
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
74
+ if (this.$configProject['isPreview']) this.init(value)
78
75
  },
79
76
  },
80
77
  created() {
@@ -168,7 +165,7 @@ export default {
168
165
  }, Math.pow(this.date, this.time > this.maxTime ? this.maxTime : this.time) * 1000);
169
166
  }
170
167
  },
171
-
168
+
172
169
  onJfbUnload() {
173
170
  if (this.timeer) {
174
171
  clearTimeout(this.timeer);
@@ -54,8 +54,9 @@
54
54
  return {}
55
55
  },
56
56
  watch: {
57
- container(value) {
58
- this.init(value)
57
+ container(value,oldValue) {
58
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
59
+ if (this.$configProject['isPreview']) this.init(value)
59
60
  }
60
61
  },
61
62
  created() {
@@ -65,7 +65,7 @@
65
65
  <view class="settle-item" v-for="(settle,index) in info.settleInfo" :key="index">
66
66
  <view>{{settle.label}}:</view>
67
67
  <view v-if="settle.type === 'price'">
68
- <xd-unit :price="settle.value" unit="" :is-old="false"></xd-unit>
68
+ <xd-unit :price="settle.value" :is-old="false"></xd-unit>
69
69
  </view>
70
70
  <view v-else v-html="settle.value"></view>
71
71
  </view>
@@ -302,7 +302,7 @@
302
302
  </view>
303
303
  <view class="jfb-base-success__body-detail-html">
304
304
  <xd-content-xss
305
- v-html="info.custom_content.content"
305
+ :html="info.custom_content.content"
306
306
  ></xd-content-xss>
307
307
  </view>
308
308
  </view>
@@ -315,7 +315,7 @@
315
315
  <view>商品详情</view>
316
316
  </view>
317
317
  <view class="jfb-base-success__body-detail-html x-content-info" v-if="info.productDetail">
318
- <xd-content-xss v-html="info.productDetail"></xd-content-xss>
318
+ <xd-content-xss :html="info.productDetail"></xd-content-xss>
319
319
  </view>
320
320
  </view>
321
321
  </view>
@@ -489,8 +489,9 @@ export default {
489
489
  // #ifndef H5
490
490
  uni.setClipboardData({
491
491
  data: text,
492
+ showToast: false,
492
493
  success: () => {
493
- this.$xdAlert({ content: "复制成功" });
494
+ //this.$xdAlert({ content: "复制成功" });
494
495
  },
495
496
  });
496
497
  // #endif
@@ -121,8 +121,9 @@
121
121
  }
122
122
  },
123
123
  watch: {
124
- container(value) {
125
- this.init(value)
124
+ container(value,oldValue) {
125
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
126
+ if (this.$configProject['isPreview']) this.init(value)
126
127
  }
127
128
  },
128
129
  created() {
@@ -147,8 +147,9 @@
147
147
  }
148
148
  },
149
149
  watch: {
150
- container(value) {
151
- this.init(value)
150
+ container(value,oldValue) {
151
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
152
+ if (this.$configProject['isPreview']) this.init(value)
152
153
  }
153
154
  },
154
155
  created() {
@@ -170,7 +171,8 @@
170
171
  this.$xdShowLoading({});
171
172
  store.dispatch('logout').then(res=>{
172
173
  this.$xdHideLoading();
173
- this.jfbAuthorize.removeToken('card');
174
+ this.jfbAuthorize.removeAllCardToken();
175
+ this.jfbAuthorize.removeAllToken()
174
176
  this.jfbAuthorize.jumpToUserLogin(this, false);
175
177
  }).catch(err=>{
176
178
  console.error(err);
@@ -124,9 +124,10 @@
124
124
  }
125
125
  },
126
126
  watch: {
127
- container(value) {
128
- this.init(value);
129
- if(this.$configProject.isPreview) {
127
+ container(value,oldValue) {
128
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
129
+ if (this.$configProject['isPreview']){
130
+ this.init(value);
130
131
  this.onJfbLoad( this.options)
131
132
  }
132
133
  }
@@ -16,6 +16,7 @@
16
16
  <view class="jfb-base-video__body">
17
17
  <view class="x-line"></view>
18
18
  <view
19
+ v-if="isShow"
19
20
  class="x-video"
20
21
  :style="{
21
22
  backgroundColor:bgColor,
@@ -26,15 +27,13 @@
26
27
  height:contentHeight + 'rpx'
27
28
  }"
28
29
  >
29
-
30
30
  <xd-video
31
31
  v-if="video !== null && video !== ''"
32
32
  :key="videoKey"
33
33
  :poster="videoSetting"
34
34
  :video="video"
35
- :pack-this="$vm"
36
35
  ></xd-video>
37
- <view class="not-video" v-if="video === ''">
36
+ <view class="not-video" v-if="isPreview && video === ''">
38
37
  <image :src="getVideoSrc"></image>
39
38
  </view>
40
39
  </view>
@@ -60,7 +59,7 @@
60
59
  mixins: [componentsMixins,extsMixins,JfbBaseVideoMixin],
61
60
  data() {
62
61
  return {
63
- selfMask: true,
62
+ isPreview: false,
64
63
  page_size: 1,
65
64
  options:{},
66
65
 
@@ -73,11 +72,14 @@
73
72
  width:750,
74
73
  bgColor:'',
75
74
  radius:0,
76
- $vm: {},
77
- videoKey : Date.now()
75
+ videoKey : Date.now(),
78
76
  }
79
77
  },
80
78
  computed: {
79
+ isShow(){
80
+ if(this.isPreview) return true;
81
+ else return this.video
82
+ },
81
83
  iconFont(){
82
84
  if(this.autoplay === 'N') return 'iconplayright'
83
85
  if(this.autoplay === 'E') return 'iconshibai';
@@ -119,14 +121,15 @@
119
121
  }
120
122
  },
121
123
  watch: {
122
- container(value, oloValue) {
123
- if(JSON.stringify(value) === JSON.stringify(oloValue)) return;
124
- this.init(value);
125
- if (this.$configProject['isPreview']) this.onJfbLoad(this.options)
124
+ container(value,oldValue) {
125
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
126
+ if (this.$configProject['isPreview']) {
127
+ this.init(value);
128
+ this.onJfbLoad(this.options)
129
+ }
126
130
  }
127
131
  },
128
132
  created() {
129
- this.$vm = this;
130
133
  this.isPreview = this.$configProject.isPreview;
131
134
  this.init(this.container);
132
135
  },
@@ -50,10 +50,6 @@
50
50
  type: String|Number,
51
51
  default: 0
52
52
  },
53
- packThis:{
54
- type:Object,
55
- required: true
56
- },
57
53
  video:{
58
54
  type:Object,
59
55
  required: true
@@ -81,8 +81,9 @@ export default {
81
81
  };
82
82
  },
83
83
  watch: {
84
- container(value) {
85
- this.init(value);
84
+ container(value,oldValue) {
85
+ if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
86
+ if (this.$configProject['isPreview']) this.init(value)
86
87
  },
87
88
  newLabel: {
88
89
  deep: true,