jufubao-base 1.0.165-beta4 → 1.0.166-beta100

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 (31) hide show
  1. package/package.json +1 -1
  2. package/src/components/JfbBaseSweep/Api.js +13 -0
  3. package/src/components/JfbBaseSweep/Attr.js +34 -0
  4. package/src/components/JfbBaseSweep/JfbBaseSweep.vue +359 -0
  5. package/src/components/JfbBaseSweep/JfbBaseSweepLess.less +79 -0
  6. package/src/components/JfbBaseSweep/JfbBaseSweepMixin.js +30 -0
  7. package/src/components/JfbBaseSweep/Mock.js +3 -0
  8. package/src/components/JfbBaseTfkCardBind/Api.js +58 -0
  9. package/src/components/JfbBaseTfkCardBind/Attr.js +58 -0
  10. package/src/components/JfbBaseTfkCardBind/JfbBaseTfkCardBind.vue +111 -0
  11. package/src/components/JfbBaseTfkCardBind/JfbBaseTfkCardBindLess.less +79 -0
  12. package/src/components/JfbBaseTfkCardBind/JfbBaseTfkCardBindMixin.js +30 -0
  13. package/src/components/JfbBaseTfkCardBind/Mock.js +13 -0
  14. package/src/components/JfbBaseTfkCardDetail/Api.js +58 -0
  15. package/src/components/JfbBaseTfkCardDetail/Attr.js +58 -0
  16. package/src/components/JfbBaseTfkCardDetail/JfbBaseTfkCardDetail.vue +111 -0
  17. package/src/components/JfbBaseTfkCardDetail/JfbBaseTfkCardDetailLess.less +79 -0
  18. package/src/components/JfbBaseTfkCardDetail/JfbBaseTfkCardDetailMixin.js +30 -0
  19. package/src/components/JfbBaseTfkCardDetail/Mock.js +13 -0
  20. package/src/components/JfbBaseTfkCardLogin/Api.js +58 -0
  21. package/src/components/JfbBaseTfkCardLogin/Attr.js +58 -0
  22. package/src/components/JfbBaseTfkCardLogin/JfbBaseTfkCardLogin.vue +111 -0
  23. package/src/components/JfbBaseTfkCardLogin/JfbBaseTfkCardLoginLess.less +79 -0
  24. package/src/components/JfbBaseTfkCardLogin/JfbBaseTfkCardLoginMixin.js +30 -0
  25. package/src/components/JfbBaseTfkCardLogin/Mock.js +13 -0
  26. package/src/components/JfbBaseTfkSearch/Api.js +58 -0
  27. package/src/components/JfbBaseTfkSearch/Attr.js +58 -0
  28. package/src/components/JfbBaseTfkSearch/JfbBaseTfkSearch.vue +111 -0
  29. package/src/components/JfbBaseTfkSearch/JfbBaseTfkSearchLess.less +79 -0
  30. package/src/components/JfbBaseTfkSearch/JfbBaseTfkSearchMixin.js +30 -0
  31. package/src/components/JfbBaseTfkSearch/Mock.js +13 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jufubao-base",
3
- "version": "1.0.165-beta4",
3
+ "version": "1.0.166-beta100",
4
4
  "private": false,
5
5
  "description": "聚福宝业务组件基础插件包",
6
6
  "main": "index.js",
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * @description API模型
5
+ * 建议:Ffff=>模块 Xxxx=>自定义名字
6
+ * 获取单记录(getByIdFfffXxxx)
7
+ * 获取列表记录(getByListFfffXxxx)
8
+ * 添加列表记录(addFfffXxxxx)
9
+ * 删除列表记录(removeFfffXxxxx|deleteFfffXxxx)
10
+ * 更新列表记录(updateFfffXxxxx)
11
+ * @type {*[]}
12
+ */
13
+ module.exports = [];
@@ -0,0 +1,34 @@
1
+ 'use strict';
2
+
3
+ export default {
4
+ style: [],
5
+ advanced: [],
6
+ content: (data) => {
7
+ return [
8
+ {
9
+ label: '门店核销首页:',
10
+ ele: 'xd-select-pages-path',
11
+ valueKey: 'change_url',
12
+ groupKey:'advanced',
13
+ placeholder: '请选择门店核销首页跳转路径',
14
+ value: data.change_url || null,
15
+ setting: {
16
+ router: XdBus.getParentApi('getPagesTree'),
17
+ },
18
+ inline: false,
19
+ },
20
+ {
21
+ label: '卡绑定:',
22
+ ele: 'xd-select-pages-path',
23
+ valueKey: 'bind_url',
24
+ groupKey:'advanced',
25
+ placeholder: '请选择卡绑定跳转路径',
26
+ value: data.bind_url || null,
27
+ setting: {
28
+ router: XdBus.getParentApi('getPagesTree'),
29
+ },
30
+ inline: false,
31
+ },
32
+ ].filter(i => i)
33
+ },
34
+ };
@@ -0,0 +1,359 @@
1
+ <template>
2
+ <view
3
+ class="jfb-base-sweep"
4
+ @click="handleEditxSelect"
5
+ :class="{ editx: isEditx && active }"
6
+ >
7
+ <!--#ifdef H5-->
8
+ <view
9
+ class="jfb-base-sweep__edit"
10
+ :class="{ editx: isEditx && active }"
11
+ v-if="isEditx && active"
12
+ >
13
+ <view class="jfb-base-sweep__edit-icon" @click="delEdit">删除</view>
14
+ </view>
15
+ <!-- #endif -->
16
+ <view
17
+ :style="{ height: layoutInfo.bodyMinHeightRpx + 'rpx' }"
18
+ class="jfb-base-sweep__body"
19
+ >
20
+ <view
21
+ :style="{ background: backgroundColor, color: warningColor }"
22
+ class="jfb-base-sweep__body-pop"
23
+ v-if="isPreview"
24
+ >设置背景模式方便编辑(占位),在线上此模块不显</view
25
+ >
26
+ <view class="jfb-base-sweep__body-other" v-if="other">
27
+ <view>
28
+ <xd-font-icon
29
+ color="red"
30
+ size="240"
31
+ icon="iconmingchengtubiao"
32
+ ></xd-font-icon>
33
+ <view class="jfb-base-sweep__body-other-text">无法识别该界面</view>
34
+ </view>
35
+ <view class="jfb-base-sweep__body-footer" :style="prod_bottom">
36
+ <XdButton @click="scan" type="primary" radius="50rpx" width="50%"
37
+ >重试</XdButton
38
+ >
39
+ </view>
40
+ </view>
41
+ <view class="jfb-base-sweep__body-other" v-if="show">
42
+ <view>
43
+ <image style="width: 500rpx;height:500rpx" src="https://img0.jufubao.cn/common/qrcode-dome.png?ver=1"></image>
44
+ </view>
45
+ <view class="jfb-base-sweep__body-footer" :style="prod_bottom">
46
+ <XdButton @click="scan" type="primary" radius="50rpx" width="50%"
47
+ >扫一扫</XdButton
48
+ >
49
+ </view>
50
+ </view>
51
+ </view>
52
+ </view>
53
+ </template>
54
+
55
+ <script>
56
+ import XdFontIcon from "@/components/XdFontIcon/XdFontIcon";
57
+ import XdButton from "@/components/XdButton/XdButton";
58
+ import { jfbRootExec } from "@/utils/xd.event";
59
+ import JfbBaseSweepMixin from "./JfbBaseSweepMixin";
60
+ import { getContainerPropsValue } from "@/utils/xd.base";
61
+ import componentsMixins from "@/mixins/componentsMixins";
62
+ import extsMixins from "@/mixins/extsMixins";
63
+ import { mapState } from "vuex";
64
+ import { parseNetworkURL } from "@/utils/linkUrl";
65
+ const Color = require("color");
66
+
67
+ export default {
68
+ name: "JfbBaseSweep",
69
+ components: {
70
+ XdFontIcon,
71
+ XdButton,
72
+ },
73
+ mixins: [componentsMixins, extsMixins, JfbBaseSweepMixin],
74
+ data() {
75
+ return {
76
+ isPreview: false,
77
+ backgroundColor: "",
78
+ other: false,
79
+ show: false,
80
+ flag: true
81
+ };
82
+ },
83
+ computed: {
84
+ ...mapState({
85
+ jwxSDK: (state) => state.jwxSDK,
86
+ }),
87
+ prod_bottom() {
88
+ return this.fixedStyle({ height: 0, zIndex: 111 });
89
+ },
90
+ },
91
+ watch: {
92
+ container(value) {
93
+ this.init(value);
94
+ },
95
+ },
96
+ async created() {
97
+ this.backgroundColor = Color(this.warningColor).alpha(0.2).toString();
98
+ this.isPreview = this.$configProject["isPreview"];
99
+ this.init(this.container);
100
+ //#ifdef H5
101
+ if (!this.$configProject.isPreview) {
102
+ await jfbRootExec("getH5WxAuthorize", {
103
+ vm: this,
104
+ data: {site_id: "wx_pub"},
105
+ })
106
+ .then(res => {
107
+ console.log(0)
108
+ this.$xdHideLoading();
109
+ this.scan();
110
+ })
111
+ .catch(error=>{
112
+ this.$xdAlert({
113
+ content: error,
114
+ });
115
+ })
116
+ }
117
+ // #endif
118
+ },
119
+ methods: {
120
+ onJfbLoad(options) {
121
+ if (!this.isPreview) {
122
+ this.$xdShowLoading({
123
+ isMask: true
124
+ });
125
+ //#ifdef MP-WEIXIN
126
+ this.$xdHideLoading();
127
+ this.scan();
128
+ //#endif
129
+ }
130
+ },
131
+ extractDomain(hostname) {
132
+ // 匹配并提取顶级域名后的两个标签(例如:.com、.co.uk)
133
+ const matches = hostname.match(/[^.]+\.[^.]+$/);
134
+ return matches ? matches[0] : hostname;
135
+ },
136
+ handleH5() {
137
+ // 判断jwxSDK是否为空
138
+ if (this.jwxSDK !== null) {
139
+ // 调用jwxSDK的scanQRCode方法,扫描二维码
140
+ this.jwxSDK.scanQRCode({
141
+ // 需要返回结果
142
+ needResult: 1,
143
+ // 扫描类型为二维码
144
+ scanType: ["qrCode"],
145
+ // 扫描成功后的回调函数
146
+ success: (res) => {
147
+ // 定义一个变量params,将url按照"?"进行分割,获取到参数部分
148
+ let params = res.resultStr.split("?")[1]
149
+ ? res.resultStr.split("?")[1]
150
+ : "";
151
+ // 将参数部分按照"&"进行分割,获取到每个参数
152
+ const queryArr = params.split("&");
153
+ // 定义一个空对象queryobjArr,用于存储参数
154
+ let queryobjArr = {};
155
+ // 遍历参数数组,将参数名和参数值存储到queryobjArr中
156
+ queryArr.forEach((item, index) => {
157
+ const Strindex = item.indexOf("=");
158
+ queryobjArr[item.slice(0, Strindex)] = item.slice(Strindex + 1);
159
+ });
160
+ // 判断queryobjArr中是否存在"x-params"参数
161
+ if (queryobjArr["x-params"]) {
162
+ // 如果存在,则将参数拼接到url中,并跳转到该url
163
+ let path = `${this.change_url}?x-params=${queryobjArr["x-params"]}&refrom=official`;
164
+ this.$xdUniHelper.navigateTo({
165
+ url: path,
166
+ });
167
+ return;
168
+ }
169
+ if (queryobjArr["pa"]) {
170
+ // 如果queryobjArr中有pa属性,则获取pa属性的值,并将其拼接到bind_url后面,然后使用navigateTo方法跳转到该路径
171
+ let qrcode = encodeURIComponent(res.resultStr)
172
+ let path = `${this.bind_url}?qrcode=${qrcode}`;
173
+ console.log(path,'pathpath');
174
+ this.$xdUniHelper.navigateTo({
175
+ url: path,
176
+ });
177
+ return;
178
+ }
179
+ // 如果res.resultStr是以http或https开头的字符串,则进行以下操作
180
+ if (/^https?:/.test(res.resultStr)) {
181
+ // 获取res.resultStr中的host属性
182
+ let host = this.$xdUniHelper.parseURL(res.resultStr).host;
183
+ // 获取当前页面的域名
184
+ let domain = document.domain;
185
+ // 如果host属性以当前页面的域名结尾,则进行以下操作
186
+ if (host.substr(-domain.length) === domain) {
187
+ // 获取res.resultStr的值
188
+ let path = res.resultStr;
189
+ // 使用navigateTo方法跳转到该路径
190
+ this.$xdUniHelper.navigateTo({
191
+ url: path,
192
+ });
193
+ return;
194
+ }
195
+ }
196
+ console.log(55555);
197
+ this.other = true;
198
+ this.show = false;
199
+ this.flag = false;
200
+ },
201
+ // 扫描失败后的回调函数
202
+ fail: (error) => {
203
+ console.log(44444,'fail');
204
+ this.other = false;
205
+ this.show = true;
206
+ // 如果error是字符串类型,则将其转换为对象类型
207
+ if (typeof error === "string") error = { error: error };
208
+ // 如果window["jwxJfbSDKParams"]存在,则将error对象与window["jwxJfbSDKParams"]合并
209
+ if (window["jwxJfbSDKParams"])
210
+ error = Object.assign(error, window["jwxJfbSDKParams"]);
211
+ // 调用$xdLog的setARMSError方法,记录错误信息
212
+ this.$xdLog.setARMSError(error);
213
+ },
214
+ cancel: ()=>{
215
+ console.log(44444,'fail');
216
+ this.other = false;
217
+ this.show = true;
218
+ }
219
+ });
220
+ }
221
+ },
222
+ handleMP() {
223
+ // 调用uni.scanCode方法,扫描二维码
224
+ uni.scanCode({
225
+ scanType: ["qrCode"],
226
+ success: (res) => {
227
+ // 定义一个变量params,将url按照"?"进行分割,获取到参数部分
228
+ let params = res.result.split("?")[1] ? res.result.split("?")[1] : "";
229
+ // 将参数部分按照"&"进行分割,获取到每个参数
230
+ const queryArr = params.split("&");
231
+ // 定义一个空对象queryobjArr,用于存储参数
232
+ let queryobjArr = {};
233
+ // 遍历参数数组,将参数名和参数值存储到queryobjArr中
234
+ queryArr.forEach((item, index) => {
235
+ const Strindex = item.indexOf("=");
236
+ queryobjArr[item.slice(0, Strindex)] = item.slice(Strindex + 1);
237
+ });
238
+ // 判断queryobjArr中是否存在"x-params"参数
239
+ if (queryobjArr["x-params"]) {
240
+ // 如果存在,则将参数拼接到url中,并跳转到该url
241
+ let path = `${this.change_url}?x-params=${queryobjArr["x-params"]}&refrom=official`;
242
+ this.$xdUniHelper.navigateTo({
243
+ url: path,
244
+ });
245
+ return;
246
+ }
247
+ if (queryobjArr["pa"]) {
248
+ // 如果queryobjArr中有pa属性,则获取pa属性的值,并将其拼接到bind_url后面,然后使用navigateTo方法跳转到该路径
249
+ let qrcode = encodeURIComponent(res.result)
250
+ let path = `${this.bind_url}?qrcode=${qrcode}`;
251
+ this.$xdUniHelper.navigateTo({
252
+ url: path,
253
+ });
254
+ return;
255
+ }
256
+ // 如果res.result是以http或https开头的字符串,则进行以下操作
257
+ if (/^https?:/.test(res.result)) {
258
+ // 获取res.result中的host属性
259
+ let host = parseNetworkURL(res.result).host;
260
+ // 获取当前页面的域名
261
+ console.log(host, 2222);
262
+ let domain = this.extractDomain(this.projectAttr.host);
263
+ console.log(this.extractDomain(this.projectAttr.host), 333);
264
+ // 如果host属性以当前页面的域名结尾,则进行以下操作
265
+ if (host.substr(-domain.length) === domain) {
266
+ // 获取res.resultStr的值
267
+ let path = res.result;
268
+ // 使用navigateTo方法跳转到该路径
269
+ this.$xdUniHelper.navigateTo({
270
+ url: path,
271
+ });
272
+ return;
273
+ }
274
+ }
275
+ this.other = true;
276
+ this.show = false;
277
+ this.flag = false;
278
+ },
279
+ fail: (error) => {
280
+ // 如果扫描失败,则调用$xdLog.setARMSError方法记录错误信息
281
+ this.other = false;
282
+ this.show = true;
283
+ this.$xdLog.setARMSError(error);
284
+ }
285
+ });
286
+ },
287
+ scan() {
288
+ try {
289
+ //#ifdef H5
290
+ this.handleH5();
291
+ //#endif
292
+ //#ifdef MP-WEIXIN
293
+ this.handleMP();
294
+ //#endif
295
+ } catch (err) {
296
+ this.$xdLog.setARMSError(err);
297
+ }
298
+ },
299
+ /**
300
+ * @description 监听事件变化
301
+ * @param container {object} 业务组件对象自己
302
+ */
303
+ init(container) {
304
+ this.change_url = getContainerPropsValue(
305
+ container,
306
+ "content.change_url",
307
+ { value: "" }
308
+ ).value;
309
+ this.bind_url = getContainerPropsValue(container, "content.bind_url", {
310
+ value: "",
311
+ }).value;
312
+ },
313
+ onJfbShow(options) {
314
+ if(this.flag) {
315
+ this.other = false;
316
+ this.show = true;
317
+ }
318
+ console.log("event.onJfbShow", options);
319
+ },
320
+ },
321
+ };
322
+ </script>
323
+
324
+ <style scoped lang="less">
325
+ @import "./JfbBaseSweepLess.less";
326
+
327
+ .jfb-base-sweep {
328
+ &__body {
329
+ min-height: 100rpx;
330
+ &-other {
331
+ display: flex;
332
+ justify-content: space-between;
333
+ padding-top: 300rpx;
334
+ align-items: center;
335
+ flex-direction: column;
336
+ &-text {
337
+ margin-top: 40rpx;
338
+ color: #666;
339
+ font-size: unit(24, rpx);
340
+ text-align: center;
341
+ }
342
+ }
343
+ &-pop {
344
+ min-height: 100rpx;
345
+ text-align: center;
346
+ vertical-align: middle;
347
+ color: #666;
348
+ font-size: unit(24, rpx);
349
+ line-height: 100rpx;
350
+ }
351
+ &-footer {
352
+ position: fixed;
353
+ left: 0;
354
+ right: 0;
355
+ height: unit(200, rpx);
356
+ }
357
+ }
358
+ }
359
+ </style>
@@ -0,0 +1,79 @@
1
+ /**
2
+ * @desc 获取绝对路径完整地址
3
+ * @param @path
4
+ **/
5
+ //例如:https://image.jufubao.cn/20220501010108/image/bg/default_gonghui_bg.png
6
+ @basePath: 'business/';
7
+ @doMain: '//sandbox-img.jufubao.cn/';
8
+
9
+ .getBusinessImageUrl(@path, @size: 'size8') {
10
+ @url: "@{doMain}@{basePath}@{path}?x-oss-process=style/@{size}";
11
+ background-image: url(@url);
12
+ }
13
+
14
+ //start
15
+ .jfb-base-sweep {
16
+ box-sizing: border-box;
17
+
18
+ &__body{
19
+ position: relative;
20
+ overflow: hidden;
21
+ z-index: 2
22
+ }
23
+
24
+ &.editx,&.editx:hover {
25
+ position: relative;
26
+ min-height: unit(100, rpx);
27
+ z-index: 3;
28
+ &::after {
29
+ border: 2rpx dashed blue;
30
+ content: " ";
31
+ position: absolute;
32
+ top:0;
33
+ left:0;
34
+ bottom:0;
35
+ right:0;
36
+ z-index: 4;
37
+ cursor: pointer;
38
+ }
39
+
40
+ }
41
+
42
+
43
+ &__edit {
44
+ cursor: pointer;
45
+ position: absolute;
46
+ right: unit(0, rpx);
47
+ top: unit(-52, rpx);
48
+ height: unit(50, rpx);
49
+ line-height: unit(50, rpx);
50
+ display: flex;
51
+ justify-content: center;
52
+ align-items: center;
53
+ background: rgba(0, 0, 0, .6);
54
+ border-radius: unit(10, rpx);
55
+ box-shadow: 0 0 10px rbga(0, 0, 0, 0.3);
56
+ color: #fff;
57
+ font-size: unit(22, rpx);
58
+
59
+ &-icon{
60
+ padding: 0 unit(20, rpx);
61
+ }
62
+
63
+ &.editx {
64
+ box-sizing: border-box;
65
+
66
+ }
67
+ }
68
+ }
69
+ //end
70
+
71
+
72
+ /**notPreview**/
73
+ .jfb-base-sweep {
74
+ //&:before {
75
+ //content: " ";
76
+ //display: table;
77
+ //}
78
+ }
79
+ /**endNotPreview**/
@@ -0,0 +1,30 @@
1
+ 'use strict';
2
+
3
+
4
+ //@AttrImport
5
+ import Attr from "./Attr";
6
+ //@EndAttrImport
7
+
8
+
9
+ export default {
10
+ data() {
11
+ return {
12
+ //#ifdef H5
13
+
14
+ //@AttrData
15
+ Attr:{}, //对外开发编辑属性
16
+ //@EndAttrData
17
+
18
+ // #endif
19
+ cssRoot: 'jfb-base-sweep'
20
+ }
21
+ },
22
+ created() {
23
+
24
+ //@AttrDataCreated
25
+ this.Attr = this.$xdUniHelper.customClone(Attr);
26
+ //@EndAttrDataCreated
27
+
28
+
29
+ },
30
+ }
@@ -0,0 +1,3 @@
1
+ 'use strict';
2
+
3
+ module.exports = {}
@@ -0,0 +1,58 @@
1
+ 'use strict';
2
+ /**
3
+ * @description 接口配置,
4
+ * 在设置方法名字当时候,别忘记加上【模块名字】:Tfk
5
+ * @type {*[]}
6
+ */
7
+ module.exports = [
8
+ {
9
+ //设置方法名字当别忘记加上【模块名字】:Tfk
10
+ mapFnName: 'getTfkByIdFilmSquate',
11
+ title: '获取电影广场列表',
12
+ path: '/api/account/film/list-film-square',
13
+ isRule: false,
14
+ params: {
15
+ last_key: ['当前页', 'Number', '必选'],
16
+ page_size: ['每页数量', 'Number', '必选'],
17
+ },
18
+ isConsole: true,
19
+ disabled: true,
20
+ },
21
+ {
22
+ //设置方法名字当别忘记加上【模块名字】:Tfk
23
+ mapFnName: 'updateTfkFilmPaiqiDate',
24
+ title: '更新排期',
25
+ path: '/api/account/film/paiqi-date',
26
+ isRule: false,
27
+ params: {
28
+ film_id: ['电影id', 'Number', '必选'],
29
+ cinema_id: ['影院id', 'Number', '必选'],
30
+ },
31
+ isConsole: true,
32
+ disabled: true,
33
+ },
34
+ {
35
+ //设置方法名字当别忘记加上【模块名字】:Tfk
36
+ mapFnName: 'removeTfkFilmAddress',
37
+ title: '删除我的配送地址',
38
+ path: '/api/account/film/paiqi-date',
39
+ isRule: false,
40
+ params: {
41
+ film_id: ['电影id', 'Number', '必选'],
42
+ },
43
+ isConsole: true,
44
+ disabled: true,
45
+ },
46
+ {
47
+ //设置方法名字当别忘记加上【模块名字】:Tfk
48
+ mapFnName: 'addTfkFilmcart',
49
+ title: '添加购物车',
50
+ path: '/api/account/film/paiqi-date',
51
+ isRule: false,
52
+ params: {
53
+ film_id: ['电影id', 'Number', '必选'],
54
+ },
55
+ isConsole: true,
56
+ disabled: true,
57
+ },
58
+ ];
@@ -0,0 +1,58 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * @description 当表单组件中有联动操作时候,使用方法进行返回
5
+ */
6
+ export default {
7
+ style: [],
8
+ content: (data) => {
9
+ return [
10
+ {
11
+ label: '背景颜色:',
12
+ ele: 'xd-color',
13
+ valueKey: 'bgcolor',
14
+ value: data.bgcolor || '',
15
+ placeholder: '请输入占位框背景颜色',
16
+ classNmae: 'input80',
17
+ rules: [
18
+ {
19
+ required: true,
20
+ message: '请输入占位框背景颜色',
21
+ trigger: 'blur'
22
+ },
23
+ ]
24
+ },
25
+ {
26
+ label: '选中路径:',
27
+ ele: 'xd-select-pages-path',
28
+ valueKey: 'select-pages-path',
29
+ value: data['select-pages-path'] || null,
30
+ setting: {
31
+ router: XdBus.getParentApi('getPagesTree')
32
+ },
33
+ },
34
+ data.bgcolor && {
35
+ label: '高度:',
36
+ ele: 'el-input',
37
+ type: 'number',
38
+ valueKey: 'height',
39
+ value: data.height || 100,
40
+ placeholder: '请输入占位框高度,单位像素,默认:10px',
41
+ className: 'input80',
42
+ rules: [
43
+ {
44
+ required: true,
45
+ message: '请输入占位框高度',
46
+ trigger: 'blur'
47
+ },
48
+ ]
49
+ },
50
+ {
51
+ label: '', //label
52
+ ele: 'slot', //package 名称
53
+ slot: 'is_reference',
54
+ },
55
+ ].filter(i=>i)
56
+ },
57
+ advanced: [],
58
+ };