jufubao-base 1.0.157-beta4 → 1.0.157-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.
@@ -33,45 +33,8 @@
33
33
  field="content_name"
34
34
  :mode="config.mode"
35
35
  :dots-styles="config.dotStyleData"
36
- :style="{height:(getHeight + 46 * $rpxNum) + 'px', width:'100%'}"
36
+ :style="{height:(getHeight + 46 * $rpxNum) + 'px'}"
37
37
  >
38
- <!--#ifdef MP-WEIXIN-->
39
- <swiper
40
- class="swiper xd-swiper-content"
41
- :style="{width: '100%', height: getHeight + 'px'}"
42
- :indicator-dots="false"
43
- :autoplay="config.carouselTime>0"
44
- :interval="config.carouselTime"
45
- :duration="500"
46
- :current="current"
47
- circular
48
- @animationfinish="handleAnimationfinish"
49
- >
50
- <swiper-item v-for="(item,index) in list" :key="index">
51
- <view
52
- class="sreen__box-list"
53
- :class="{s3:config.cell === 3,s4:config.cell === 4}"
54
- :style="{ height: getHeight + 'px' }"
55
- >
56
- <view
57
- v-for="(it, indext) in item"
58
- :key="it['content_id']"
59
- @click="handleClick(it)"
60
- :style="{
61
- borderRadius: config.radius + 'rpx',
62
- width: config.width + 'px',
63
- height: config.height + 'px',
64
- marginRight: (indext+1) % config.cell === 0 ? 0: config.padding + 'rpx',
65
- marginTop: indext < config.cell ? 0 : config.padding + 'rpx',
66
- }"
67
- >
68
- <image :style="{ width: width + 'px', height: height + 'px'}" :src="it.image_url" mode="widthFix"></image>
69
- </view>
70
- </view>
71
- </swiper-item>
72
- </swiper>
73
- <!--#endif-->
74
- <!--#ifdef H5-->
75
38
  <xd-swiper
76
39
  :indicator-dots="false"
77
40
  :interval="config.carouselTime"
@@ -82,32 +45,31 @@
82
45
  @onClickItem="handleClick"
83
46
  @animationfinish="handleAnimationfinish"
84
47
  >
85
- <template slot-scope="{ item, index}">
86
- <view
87
- class="sreen__box-list"
48
+ <template slot-scope="{ item, index}">
49
+ <view
50
+ class="sreen__box-list"
88
51
  :class="{s3:config.cell === 3,s4:config.cell === 4}"
89
- :style="{
90
- height: getHeight + 'px'
91
- }"
92
- >
93
- <view
94
- v-for="(it, indext) in item"
95
- :key="it['content_id']"
96
- :style="{
97
- borderRadius: config.radius + 'rpx',
98
- width: config.width + 'px',
99
- height: config.height + 'px',
100
- marginRight: (indext+1) % config.cell === 0 ? 0: config.padding + 'rpx',
101
- marginTop: indext < config.cell ? 0 : config.padding + 'rpx',
102
- }"
103
- @click="handleClick(it)"
104
- >
105
- <image :style="{ width: width + 'px', height: height + 'px'}" :src="it.image_url" mode="widthFix"></image>
106
- </view>
107
- </view>
108
- </template>
52
+ :style="{
53
+ height: getHeight + 'px'
54
+ }"
55
+ >
56
+ <view
57
+ v-for="(it, indext) in item"
58
+ :key="it['content_id']"
59
+ :style="{
60
+ borderRadius: config.radius + 'rpx',
61
+ width: config.width + 'px',
62
+ height: config.height + 'px',
63
+ marginRight: (indext+1) % config.cell === 0 ? 0: config.padding + 'rpx',
64
+ marginTop: indext < config.cell ? 0 : config.padding + 'rpx',
65
+ }"
66
+ @click="handleClick(it)"
67
+ >
68
+ <image :style="{ width: width + 'px', height: height + 'px'}" :src="it.image_url" mode="widthFix"></image>
69
+ </view>
70
+ </view>
71
+ </template>
109
72
  </xd-swiper>
110
- <!--#endif-->
111
73
  </xd-swiper-dot>
112
74
  </view>
113
75
  <view v-if="isPreview" class="carousel-mask"></view>
@@ -171,64 +133,6 @@
171
133
  handleAnimationfinish(e) {
172
134
  this.current = e.detail.current;
173
135
  },
174
-
175
- /**
176
- * @description 过滤不可以用
177
- * 当前项目未H5时,过滤所有小程序应用
178
- * 当前项目未小程序时,过滤所有非当前小程序应用
179
- * 站外地址直接返回
180
- * 站内地址未选值直接返回
181
- * 预览模式全过
182
- */
183
- filterItem(){
184
- let content = this.content.filter(item=>{
185
- //预览模式
186
- if( this.$configProject.isPreview) return true;
187
-
188
- //非内部应用
189
- if(item.redirect_type !== 'INN') return true
190
-
191
- //没有配置链接
192
- if(!item.redirect_data) return true;
193
-
194
- //内部应用
195
- else {
196
- let redirect_data;
197
- try {
198
- redirect_data = JSON.parse(item.redirect_data);
199
- if(!item['app_type']) item['app_type']= 'h5';
200
-
201
- //#ifdef H5
202
- return item['app_type'] !== 'wxmp';
203
- //#endif
204
-
205
- //#ifdef MP-WEIXIN
206
- let actDir = this.$parent.projectAttr.deploy_dir;
207
- let dir = this.getPathDir(redirect_data.page);
208
- if(item['app_type'] === 'wxmp'){
209
- return actDir === dir;
210
- }
211
- else if(item['app_type'] === 'h5') return true;
212
- else return true
213
- //#endif
214
- }
215
- catch (e) {
216
- return true
217
- }
218
- }
219
- });
220
- console.warn(`PostersList:${JSON.stringify(content.map(item=>`${item.app_type}:${item.content_name}:${item.redirect_data}`), null,2)}`)
221
- return content;
222
-
223
- },
224
-
225
- getPathDir(pathDir){
226
- if(pathDir.indexOf('@site_domain@/') === 0) {
227
- return pathDir.replace('@site_domain@/','').split('/')[0]
228
- }
229
- return ''
230
- },
231
-
232
136
  init() {
233
137
  if (this.timer) clearTimeout(this.timer);
234
138
  this.timer = setTimeout(() => {
@@ -236,9 +140,6 @@
236
140
  this.height = Number(this.config.height);
237
141
  this.padding = Number(this.config.padding);
238
142
 
239
- //过滤不可以用
240
- const content = this.filterItem();
241
-
242
143
  //静态图显示
243
144
  if(this.config.isCarousel === 1) {
244
145
  this.list = this.content
@@ -255,28 +156,18 @@
255
156
  }
256
157
  }, 100)
257
158
  },
258
-
259
159
  handleClick(item) {
260
- if(!item.redirect_data) {
261
- console.warn(`未配置链接地址: ${item.redirect_data}`);
262
- console.error(`未配置链接地址: ${item.redirect_data}`);
263
- return
264
- }
265
-
266
160
  //内部链接跳转地址
267
161
  if (item.redirect_type === 'INN') {
268
162
  try {
269
163
  let url = JSON.parse(item.redirect_data);
270
164
  let params = '';
271
- if(url.page) {
272
- if (item['redirect_params']) params = `?${item['redirect_params']}`;
273
- this.$xdUniHelper.navigateTo({url: url.page + params})
274
- }
275
- else {
276
- console.error(`应用链接配置错误: ${url.page}`)
277
- }
165
+ if (item['redirect_params']) params = `?${item['redirect_params']}`;
166
+ this.$xdUniHelper.navigateTo({
167
+ url: url.page + params
168
+ })
278
169
  } catch (e) {
279
- console.error(`应用链接配置错误: ${item.redirect_data}`)
170
+ console.error(e)
280
171
  }
281
172
  }
282
173
 
@@ -286,32 +177,29 @@
286
177
  //#ifdef MP-WEIXIN
287
178
  try {
288
179
  let url = JSON.parse(item.redirect_data);
289
- if (reg.test(url.url)) {
180
+ if (reg.test(url.url) && this.$configProject.extras.webview) {
290
181
  console.warn(`广告跳转外站: ${url.url}`)
291
- this.$xdUniHelper.navigateTo(url);
182
+ this.$xdUniHelper.navigateTo({
183
+ url: `${this.$configProject.extras.webview}?seatUrl=${Base64.encodeURI(url.url)}`
184
+ });
292
185
  } else {
293
- console.error(`广告跳转外站配置错误: ${url.url}`)
186
+ throw Error('地址错误')
294
187
  }
295
188
  } catch (e) {
296
- console.error(`广告跳转外站配置错误: ${item.redirect_data}`)
189
+ console.error(e)
297
190
  }
298
191
  //#endif
299
192
  //#ifdef H5
300
193
  try {
301
194
  let url = JSON.parse(item.redirect_data);
302
195
  console.warn(`广告跳转外站: ${url.url}`);
303
- this.$xdUniHelper.redirectTo(url, false)
196
+ this.$xdUniHelper.navigateTo(url)
304
197
  } catch (e) {
305
- console.error(`广告跳转外站配置错误: ${item.redirect_data}`)
198
+ console.error(e)
306
199
  }
307
200
  //#endif
308
201
 
309
202
  }
310
-
311
- //无跳转地址
312
- if(item.redirect_type === 'EMP') {
313
- console.warn(`无跳转地址`);
314
- }
315
203
  },
316
204
  }
317
205
  }
@@ -321,7 +209,6 @@
321
209
  .sreen {
322
210
  width: calc(100% + 4px); /**防止宽度不够问**/
323
211
  position: relative;
324
- height: 100%;
325
212
 
326
213
  & .carousel-mask {
327
214
  position: absolute;
@@ -339,7 +226,6 @@
339
226
  flex-wrap: wrap;
340
227
  overflow: hidden;
341
228
  width: calc(100% + 20px); /**防止宽度不够问**/
342
- height: 100%;
343
229
 
344
230
  & > view {
345
231
  display: flex;
@@ -352,8 +238,6 @@
352
238
  }
353
239
 
354
240
  &__box.carousel {
355
- width: 100%;
356
- height: 100%;
357
241
  display: flex;
358
242
  justify-content: flex-start;
359
243
  align-items: flex-start;
@@ -363,7 +247,6 @@
363
247
 
364
248
  & .sreen__box-list {
365
249
  width: calc(100% + 20px); /**防止宽度不够问**/
366
- height: 100%;
367
250
  display: flex;
368
251
  justify-content: flex-start;
369
252
  align-items: flex-start;
@@ -50,6 +50,7 @@ export default {
50
50
  value: params.height || 500,
51
51
  className: 'input40',
52
52
  placeholder: '请广告位内容间距设置',
53
+ disabled:xiugai,
53
54
  notice: '广告位选取内容后,将无法修改,单位:像素,默认: <span style="color:red">500</span>像素',
54
55
  inline: false,
55
56
  },
@@ -59,6 +60,7 @@ export default {
59
60
  groupKey:'style',
60
61
  valueKey: 'margin',
61
62
  value: params.margin || null,
63
+ disabled: xiugai,
62
64
  setting: { type: 'margin'},
63
65
  placeholder: '请设置广告位边距设置',
64
66
  notice: '广告位选取内容后,将无法修改,单位:像素',
@@ -70,9 +72,10 @@ export default {
70
72
  type: 'number',
71
73
  valueKey: 'msMargin',
72
74
  groupKey:'style',
73
- value: params.msMargin,
75
+ value: params.msMargin || 10,
74
76
  className: 'input40',
75
77
  placeholder: '请广告位内容间距设置',
78
+ disabled: xiugai,
76
79
  notice: '广告位选取内容后,将无法修改,单位:像素,默认: <span style="color:red">10</span>像素',
77
80
  inline: false,
78
81
  },