uview-plus 3.0.14 → 3.1.0

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 (198) hide show
  1. package/changelog.md +8 -0
  2. package/components/u--form/u--form.vue +4 -2
  3. package/components/u--image/u--image.vue +4 -2
  4. package/components/u--input/u--input.vue +5 -3
  5. package/components/u--text/u--text.vue +4 -2
  6. package/components/u--textarea/u--textarea.vue +4 -2
  7. package/components/u-action-sheet/props.js +11 -10
  8. package/components/u-action-sheet/u-action-sheet.vue +3 -1
  9. package/components/u-album/props.js +12 -11
  10. package/components/u-album/u-album.vue +4 -2
  11. package/components/u-alert/props.js +9 -8
  12. package/components/u-alert/u-alert.vue +3 -1
  13. package/components/u-avatar/props.js +15 -14
  14. package/components/u-avatar/u-avatar.vue +3 -1
  15. package/components/u-avatar-group/props.js +10 -9
  16. package/components/u-avatar-group/u-avatar-group.vue +3 -1
  17. package/components/u-back-top/props.js +11 -10
  18. package/components/u-back-top/u-back-top.vue +2 -0
  19. package/components/u-badge/props.js +15 -14
  20. package/components/u-badge/u-badge.vue +3 -1
  21. package/components/u-button/props.js +29 -28
  22. package/components/u-button/u-button.vue +4 -2
  23. package/components/u-calendar/month.vue +1 -1
  24. package/components/u-calendar/props.js +28 -27
  25. package/components/u-calendar/u-calendar.vue +3 -1
  26. package/components/u-car-keyboard/props.js +1 -0
  27. package/components/u-car-keyboard/u-car-keyboard.vue +4 -2
  28. package/components/u-cell/props.js +18 -17
  29. package/components/u-cell/u-cell.vue +12 -8
  30. package/components/u-cell-group/props.js +3 -2
  31. package/components/u-cell-group/u-cell-group.vue +3 -1
  32. package/components/u-checkbox/props.js +14 -13
  33. package/components/u-checkbox/u-checkbox.vue +3 -1
  34. package/components/u-checkbox-group/props.js +16 -15
  35. package/components/u-checkbox-group/u-checkbox-group.vue +3 -1
  36. package/components/u-circle-progress/props.js +2 -1
  37. package/components/u-circle-progress/u-circle-progress.vue +3 -1
  38. package/components/u-code/props.js +7 -6
  39. package/components/u-code/u-code.vue +3 -1
  40. package/components/u-code-input/props.js +16 -15
  41. package/components/u-code-input/u-code-input.vue +3 -1
  42. package/components/u-col/props.js +6 -5
  43. package/components/u-col/u-col.vue +3 -1
  44. package/components/u-collapse/props.js +4 -3
  45. package/components/u-collapse/u-collapse.vue +12 -12
  46. package/components/u-collapse-item/props.js +12 -11
  47. package/components/u-collapse-item/u-collapse-item.vue +15 -13
  48. package/components/u-column-notice/props.js +11 -10
  49. package/components/u-column-notice/u-column-notice.vue +3 -1
  50. package/components/u-count-down/props.js +5 -4
  51. package/components/u-count-down/u-count-down.vue +5 -3
  52. package/components/u-count-to/props.js +12 -11
  53. package/components/u-count-to/u-count-to.vue +3 -1
  54. package/components/u-datetime-picker/props.js +24 -23
  55. package/components/u-datetime-picker/u-datetime-picker.vue +3 -1
  56. package/components/u-divider/props.js +9 -8
  57. package/components/u-divider/u-divider.vue +3 -1
  58. package/components/u-dropdown/props.js +5 -4
  59. package/components/u-dropdown/u-dropdown.vue +4 -2
  60. package/components/u-dropdown-item/props.js +2 -1
  61. package/components/u-dropdown-item/u-dropdown-item.vue +4 -2
  62. package/components/u-empty/props.js +12 -11
  63. package/components/u-empty/u-empty.vue +3 -2
  64. package/components/u-form/props.js +9 -8
  65. package/components/u-form/u-form.vue +13 -11
  66. package/components/u-form-item/props.js +9 -8
  67. package/components/u-form-item/u-form-item.vue +3 -1
  68. package/components/u-gap/props.js +5 -4
  69. package/components/u-gap/u-gap.vue +3 -1
  70. package/components/u-grid/props.js +4 -3
  71. package/components/u-grid/u-grid.vue +3 -1
  72. package/components/u-grid-item/props.js +3 -2
  73. package/components/u-grid-item/u-grid-item.vue +3 -1
  74. package/components/u-icon/props.js +18 -17
  75. package/components/u-icon/u-icon.vue +4 -2
  76. package/components/u-image/props.js +18 -17
  77. package/components/u-image/u-image.vue +4 -2
  78. package/components/u-index-anchor/props.js +6 -5
  79. package/components/u-index-anchor/u-index-anchor.vue +3 -1
  80. package/components/u-index-item/props.js +1 -0
  81. package/components/u-index-item/u-index-item.vue +3 -1
  82. package/components/u-index-list/props.js +6 -5
  83. package/components/u-index-list/u-index-list.vue +3 -1
  84. package/components/u-input/props.js +36 -35
  85. package/components/u-input/u-input.vue +3 -1
  86. package/components/u-keyboard/props.js +17 -16
  87. package/components/u-keyboard/u-keyboard.vue +3 -1
  88. package/components/u-line/props.js +7 -6
  89. package/components/u-line/u-line.vue +3 -1
  90. package/components/u-line-progress/props.js +6 -5
  91. package/components/u-line-progress/u-line-progress.vue +3 -1
  92. package/components/u-link/props.js +8 -7
  93. package/components/u-link/u-link.vue +3 -1
  94. package/components/u-list/props.js +15 -14
  95. package/components/u-list/u-list.vue +3 -1
  96. package/components/u-list-item/props.js +2 -1
  97. package/components/u-list-item/u-list-item.vue +3 -1
  98. package/components/u-loading-icon/props.js +13 -12
  99. package/components/u-loading-icon/u-loading-icon.vue +4 -2
  100. package/components/u-loading-page/props.js +10 -9
  101. package/components/u-loading-page/u-loading-page.vue +3 -1
  102. package/components/u-loadmore/props.js +19 -18
  103. package/components/u-loadmore/u-loadmore.vue +3 -1
  104. package/components/u-modal/props.js +17 -16
  105. package/components/u-modal/u-modal.vue +4 -2
  106. package/components/u-navbar/props.js +34 -33
  107. package/components/u-navbar/u-navbar.vue +3 -1
  108. package/components/u-no-network/props.js +4 -3
  109. package/components/u-no-network/u-no-network.vue +3 -1
  110. package/components/u-notice-bar/props.js +14 -13
  111. package/components/u-notice-bar/u-notice-bar.vue +3 -1
  112. package/components/u-notify/props.js +10 -9
  113. package/components/u-notify/u-notify.vue +3 -1
  114. package/components/u-number-box/props.js +23 -22
  115. package/components/u-number-box/u-number-box.vue +3 -1
  116. package/components/u-number-keyboard/props.js +4 -3
  117. package/components/u-number-keyboard/u-number-keyboard.vue +3 -1
  118. package/components/u-overlay/props.js +5 -4
  119. package/components/u-overlay/u-overlay.vue +3 -1
  120. package/components/u-parse/props.js +9 -8
  121. package/components/u-picker/props.js +16 -15
  122. package/components/u-picker/u-picker.vue +3 -1
  123. package/components/u-picker-column/props.js +1 -0
  124. package/components/u-picker-column/u-picker-column.vue +3 -1
  125. package/components/u-popup/props.js +16 -15
  126. package/components/u-popup/u-popup.vue +4 -2
  127. package/components/u-radio/props.js +13 -12
  128. package/components/u-radio/u-radio.vue +3 -1
  129. package/components/u-radio-group/props.js +18 -17
  130. package/components/u-radio-group/u-radio-group.vue +3 -1
  131. package/components/u-rate/props.js +15 -14
  132. package/components/u-rate/u-rate.vue +3 -1
  133. package/components/u-read-more/props.js +9 -8
  134. package/components/u-read-more/u-read-more.vue +3 -1
  135. package/components/u-row/props.js +4 -3
  136. package/components/u-row/u-row.vue +3 -1
  137. package/components/u-row-notice/props.js +8 -7
  138. package/components/u-row-notice/u-row-notice.vue +3 -1
  139. package/components/u-safe-bottom/props.js +1 -0
  140. package/components/u-safe-bottom/u-safe-bottom.vue +4 -2
  141. package/components/u-scroll-list/props.js +7 -6
  142. package/components/u-scroll-list/u-scroll-list.vue +5 -1
  143. package/components/u-search/props.js +25 -24
  144. package/components/u-search/u-search.vue +3 -1
  145. package/components/u-skeleton/props.js +12 -11
  146. package/components/u-skeleton/u-skeleton.vue +3 -1
  147. package/components/u-slider/props.js +11 -10
  148. package/components/u-slider/u-slider.vue +5 -3
  149. package/components/u-status-bar/props.js +2 -1
  150. package/components/u-status-bar/u-status-bar.vue +3 -1
  151. package/components/u-steps/props.js +9 -8
  152. package/components/u-steps/u-steps.vue +3 -1
  153. package/components/u-steps-item/props.js +5 -4
  154. package/components/u-steps-item/u-steps-item.vue +3 -1
  155. package/components/u-sticky/props.js +7 -6
  156. package/components/u-sticky/u-sticky.vue +4 -2
  157. package/components/u-subsection/props.js +10 -9
  158. package/components/u-subsection/u-subsection.vue +3 -1
  159. package/components/u-swipe-action/props.js +2 -1
  160. package/components/u-swipe-action/u-swipe-action.vue +3 -1
  161. package/components/u-swipe-action-item/props.js +7 -6
  162. package/components/u-swipe-action-item/u-swipe-action-item.vue +7 -3
  163. package/components/u-swiper/props.js +25 -24
  164. package/components/u-swiper/u-swiper.vue +3 -1
  165. package/components/u-swiper-indicator/props.js +6 -5
  166. package/components/u-swiper-indicator/u-swiper-indicator.vue +3 -1
  167. package/components/u-switch/props.js +12 -11
  168. package/components/u-switch/u-switch.vue +3 -1
  169. package/components/u-tabbar/props.js +9 -8
  170. package/components/u-tabbar/u-tabbar.vue +3 -1
  171. package/components/u-tabbar-item/props.js +7 -6
  172. package/components/u-tabbar-item/u-tabbar-item.vue +3 -1
  173. package/components/u-table/props.js +1 -0
  174. package/components/u-table/u-table.vue +3 -1
  175. package/components/u-tabs/props.js +13 -12
  176. package/components/u-tabs/u-tabs.vue +3 -1
  177. package/components/u-tabs-item/props.js +1 -0
  178. package/components/u-tabs-item/u-tabs-item.vue +3 -1
  179. package/components/u-tag/props.js +16 -15
  180. package/components/u-tag/u-tag.vue +5 -3
  181. package/components/u-td/props.js +1 -0
  182. package/components/u-td/u-td.vue +3 -1
  183. package/components/u-text/props.js +22 -21
  184. package/components/u-text/u-text.vue +4 -2
  185. package/components/u-textarea/props.js +24 -23
  186. package/components/u-textarea/u-textarea.vue +3 -1
  187. package/components/u-toast/u-toast.vue +3 -1
  188. package/components/u-toolbar/props.js +7 -6
  189. package/components/u-toolbar/u-toolbar.vue +3 -1
  190. package/components/u-tooltip/props.js +12 -11
  191. package/components/u-tooltip/u-tooltip.vue +3 -1
  192. package/components/u-tr/props.js +1 -0
  193. package/components/u-tr/u-tr.vue +3 -1
  194. package/components/u-transition/props.js +5 -4
  195. package/components/u-transition/u-transition.vue +3 -1
  196. package/components/u-upload/props.js +23 -22
  197. package/components/u-upload/u-upload.vue +4 -2
  198. package/package.json +5 -8
@@ -1,59 +1,60 @@
1
+ import defprops from '../../libs/config/props';
1
2
  export default {
2
3
  props: {
3
4
  // 内置图标名称,或图片路径,建议绝对路径
4
5
  icon: {
5
6
  type: String,
6
- default: uni.$u.props.empty.icon
7
+ default: defprops.empty.icon
7
8
  },
8
9
  // 提示文字
9
10
  text: {
10
11
  type: String,
11
- default: uni.$u.props.empty.text
12
+ default: defprops.empty.text
12
13
  },
13
14
  // 文字颜色
14
15
  textColor: {
15
16
  type: String,
16
- default: uni.$u.props.empty.textColor
17
+ default: defprops.empty.textColor
17
18
  },
18
19
  // 文字大小
19
20
  textSize: {
20
21
  type: [String, Number],
21
- default: uni.$u.props.empty.textSize
22
+ default: defprops.empty.textSize
22
23
  },
23
24
  // 图标的颜色
24
25
  iconColor: {
25
26
  type: String,
26
- default: uni.$u.props.empty.iconColor
27
+ default: defprops.empty.iconColor
27
28
  },
28
29
  // 图标的大小
29
30
  iconSize: {
30
31
  type: [String, Number],
31
- default: uni.$u.props.empty.iconSize
32
+ default: defprops.empty.iconSize
32
33
  },
33
34
  // 选择预置的图标类型
34
35
  mode: {
35
36
  type: String,
36
- default: uni.$u.props.empty.mode
37
+ default: defprops.empty.mode
37
38
  },
38
39
  // 图标宽度,单位px
39
40
  width: {
40
41
  type: [String, Number],
41
- default: uni.$u.props.empty.width
42
+ default: defprops.empty.width
42
43
  },
43
44
  // 图标高度,单位px
44
45
  height: {
45
46
  type: [String, Number],
46
- default: uni.$u.props.empty.height
47
+ default: defprops.empty.height
47
48
  },
48
49
  // 是否显示组件
49
50
  show: {
50
51
  type: Boolean,
51
- default: uni.$u.props.empty.show
52
+ default: defprops.empty.show
52
53
  },
53
54
  // 组件距离上一个元素之间的距离,默认px单位
54
55
  marginTop: {
55
56
  type: [String, Number],
56
- default: uni.$u.props.empty.marginTop
57
+ default: defprops.empty.marginTop
57
58
  }
58
59
  }
59
60
  }
@@ -32,7 +32,8 @@
32
32
 
33
33
  <script>
34
34
  import props from './props.js';
35
-
35
+ import mpMixin from '../../libs/mixin/mpMixin.js';
36
+ import mixin from '../../libs/mixin/mixin.js';
36
37
  /**
37
38
  * empty 内容为空
38
39
  * @description 该组件用于需要加载内容,但是加载的第一页数据就为空,提示一个"没有内容"的场景, 我们精心挑选了十几个场景的图标,方便您使用。
@@ -56,7 +57,7 @@
56
57
  */
57
58
  export default {
58
59
  name: "u-empty",
59
- mixins: [uni.$u.mpMixin, uni.$u.mixin, props],
60
+ mixins: [mpMixin, mixin, props],
60
61
  data() {
61
62
  return {
62
63
  icons: {
@@ -1,45 +1,46 @@
1
+ import defprops from '../../libs/config/props';
1
2
  export default {
2
3
  props: {
3
4
  // 当前form的需要验证字段的集合
4
5
  model: {
5
6
  type: Object,
6
- default: uni.$u.props.form.model
7
+ default: defprops.form.model
7
8
  },
8
9
  // 验证规则
9
10
  rules: {
10
11
  type: [Object, Function, Array],
11
- default: uni.$u.props.form.rules
12
+ default: defprops.form.rules
12
13
  },
13
14
  // 有错误时的提示方式,message-提示信息,toast-进行toast提示
14
15
  // border-bottom-下边框呈现红色,none-无提示
15
16
  errorType: {
16
17
  type: String,
17
- default: uni.$u.props.form.errorType
18
+ default: defprops.form.errorType
18
19
  },
19
20
  // 是否显示表单域的下划线边框
20
21
  borderBottom: {
21
22
  type: Boolean,
22
- default: uni.$u.props.form.borderBottom
23
+ default: defprops.form.borderBottom
23
24
  },
24
25
  // label的位置,left-左边,top-上边
25
26
  labelPosition: {
26
27
  type: String,
27
- default: uni.$u.props.form.labelPosition
28
+ default: defprops.form.labelPosition
28
29
  },
29
30
  // label的宽度,单位px
30
31
  labelWidth: {
31
32
  type: [String, Number],
32
- default: uni.$u.props.form.labelWidth
33
+ default: defprops.form.labelWidth
33
34
  },
34
35
  // lable字体的对齐方式
35
36
  labelAlign: {
36
37
  type: String,
37
- default: uni.$u.props.form.labelAlign
38
+ default: defprops.form.labelAlign
38
39
  },
39
40
  // lable的样式,对象形式
40
41
  labelStyle: {
41
42
  type: Object,
42
- default: uni.$u.props.form.labelStyle
43
+ default: defprops.form.labelStyle
43
44
  }
44
45
  }
45
46
  }
@@ -5,7 +5,9 @@
5
5
  </template>
6
6
 
7
7
  <script>
8
- import props from "./props.js";
8
+ import props from "./props.js";
9
+ import mpMixin from '../../libs/mixin/mpMixin.js';
10
+ import mixin from '../../libs/mixin/mixin.js';
9
11
  import Schema from "../../libs/util/async-validator";
10
12
  // 去除警告信息
11
13
  Schema.warning = function() {};
@@ -25,7 +27,7 @@
25
27
  */
26
28
  export default {
27
29
  name: "u-form",
28
- mixins: [uni.$u.mpMixin, uni.$u.mixin, props],
30
+ mixins: [mpMixin, mixin, props],
29
31
  provide() {
30
32
  return {
31
33
  uForm: this,
@@ -89,10 +91,10 @@
89
91
  // 手动设置校验的规则,如果规则中有函数的话,微信小程序中会过滤掉,所以只能手动调用设置规则
90
92
  setRules(rules) {
91
93
  // 判断是否有规则
92
- if (Object.keys(rules).length === 0) return;
93
- if (process.env.NODE_ENV === 'development' && Object.keys(this.model).length === 0) {
94
- uni.$u.error('设置rules,model必须设置!如果已经设置,请刷新页面。');
95
- return;
94
+ if (Object.keys(rules).length === 0) return;
95
+ if (process.env.NODE_ENV === 'development' && Object.keys(this.model).length === 0) {
96
+ uni.$u.error('设置rules,model必须设置!如果已经设置,请刷新页面。');
97
+ return;
96
98
  };
97
99
  this.formRules = rules;
98
100
  // 重新将规则赋予Validator
@@ -181,11 +183,11 @@
181
183
  });
182
184
  },
183
185
  // 校验全部数据
184
- validate(callback) {
185
- // 开发环境才提示,生产环境不会提示
186
- if (process.env.NODE_ENV === 'development' && Object.keys(this.formRules).length === 0) {
187
- uni.$u.error('未设置rules,请看文档说明!如果已经设置,请刷新页面。');
188
- return;
186
+ validate(callback) {
187
+ // 开发环境才提示,生产环境不会提示
188
+ if (process.env.NODE_ENV === 'development' && Object.keys(this.formRules).length === 0) {
189
+ uni.$u.error('未设置rules,请看文档说明!如果已经设置,请刷新页面。');
190
+ return;
189
191
  }
190
192
  return new Promise((resolve, reject) => {
191
193
  // $nextTick是必须的,否则model的变更,可能会延后于validate方法
@@ -1,43 +1,44 @@
1
+ import defprops from '../../libs/config/props';
1
2
  export default {
2
3
  props: {
3
4
  // input的label提示语
4
5
  label: {
5
6
  type: String,
6
- default: uni.$u.props.formItem.label
7
+ default: defprops.formItem.label
7
8
  },
8
9
  // 绑定的值
9
10
  prop: {
10
11
  type: String,
11
- default: uni.$u.props.formItem.prop
12
+ default: defprops.formItem.prop
12
13
  },
13
14
  // 是否显示表单域的下划线边框
14
15
  borderBottom: {
15
16
  type: [String, Boolean],
16
- default: uni.$u.props.formItem.borderBottom
17
+ default: defprops.formItem.borderBottom
17
18
  },
18
19
  // label的宽度,单位px
19
20
  labelWidth: {
20
21
  type: [String, Number],
21
- default: uni.$u.props.formItem.labelWidth
22
+ default: defprops.formItem.labelWidth
22
23
  },
23
24
  // 右侧图标
24
25
  rightIcon: {
25
26
  type: String,
26
- default: uni.$u.props.formItem.rightIcon
27
+ default: defprops.formItem.rightIcon
27
28
  },
28
29
  // 左侧图标
29
30
  leftIcon: {
30
31
  type: String,
31
- default: uni.$u.props.formItem.leftIcon
32
+ default: defprops.formItem.leftIcon
32
33
  },
33
34
  // 是否显示左边的必填星号,只作显示用,具体校验必填的逻辑,请在rules中配置
34
35
  required: {
35
36
  type: Boolean,
36
- default: uni.$u.props.formItem.required
37
+ default: defprops.formItem.required
37
38
  },
38
39
  leftIconStyle: {
39
40
  type: [String, Object],
40
- default: uni.$u.props.formItem.leftIconStyle,
41
+ default: defprops.formItem.leftIconStyle,
41
42
  }
42
43
  }
43
44
  }
@@ -76,6 +76,8 @@
76
76
 
77
77
  <script>
78
78
  import props from './props.js';
79
+ import mpMixin from '../../libs/mixin/mpMixin.js';
80
+ import mixin from '../../libs/mixin/mixin.js';
79
81
  /**
80
82
  * Form 表单
81
83
  * @description 此组件一般用于表单场景,可以配置Input输入框,Select弹出框,进行表单验证等。
@@ -93,7 +95,7 @@
93
95
  */
94
96
  export default {
95
97
  name: 'u-form-item',
96
- mixins: [uni.$u.mpMixin, uni.$u.mixin, props],
98
+ mixins: [mpMixin, mixin, props],
97
99
  data() {
98
100
  return {
99
101
  // 错误提示语
@@ -1,24 +1,25 @@
1
+ import defprops from '../../libs/config/props';
1
2
  export default {
2
3
  props: {
3
4
  // 背景颜色(默认transparent)
4
5
  bgColor: {
5
6
  type: String,
6
- default: uni.$u.props.gap.bgColor
7
+ default: defprops.gap.bgColor
7
8
  },
8
9
  // 分割槽高度,单位px(默认30)
9
10
  height: {
10
11
  type: [String, Number],
11
- default: uni.$u.props.gap.height
12
+ default: defprops.gap.height
12
13
  },
13
14
  // 与上一个组件的距离
14
15
  marginTop: {
15
16
  type: [String, Number],
16
- default: uni.$u.props.gap.marginTop
17
+ default: defprops.gap.marginTop
17
18
  },
18
19
  // 与下一个组件的距离
19
20
  marginBottom: {
20
21
  type: [String, Number],
21
- default: uni.$u.props.gap.marginBottom
22
+ default: defprops.gap.marginBottom
22
23
  }
23
24
  }
24
25
  }
@@ -4,6 +4,8 @@
4
4
 
5
5
  <script>
6
6
  import props from './props.js';
7
+ import mpMixin from '../../libs/mixin/mpMixin.js';
8
+ import mixin from '../../libs/mixin/mixin.js';
7
9
  /**
8
10
  * gap 间隔槽
9
11
  * @description 该组件一般用于内容块之间的用一个灰色块隔开的场景,方便用户风格统一,减少工作量
@@ -18,7 +20,7 @@
18
20
  */
19
21
  export default {
20
22
  name: "u-gap",
21
- mixins: [uni.$u.mpMixin, uni.$u.mixin,props],
23
+ mixins: [mpMixin, mixin, props],
22
24
  computed: {
23
25
  gapStyle() {
24
26
  const style = {
@@ -1,19 +1,20 @@
1
+ import defprops from '../../libs/config/props';
1
2
  export default {
2
3
  props: {
3
4
  // 分成几列
4
5
  col: {
5
6
  type: [String, Number],
6
- default: uni.$u.props.grid.col
7
+ default: defprops.grid.col
7
8
  },
8
9
  // 是否显示边框
9
10
  border: {
10
11
  type: Boolean,
11
- default: uni.$u.props.grid.border
12
+ default: defprops.grid.border
12
13
  },
13
14
  // 宫格对齐方式,表现为数量少的时候,靠左,居中,还是靠右
14
15
  align: {
15
16
  type: String,
16
- default: uni.$u.props.grid.align
17
+ default: defprops.grid.align
17
18
  }
18
19
  }
19
20
  }
@@ -10,6 +10,8 @@
10
10
 
11
11
  <script>
12
12
  import props from './props.js';
13
+ import mpMixin from '../../libs/mixin/mpMixin.js';
14
+ import mixin from '../../libs/mixin/mixin.js';
13
15
  /**
14
16
  * grid 宫格布局
15
17
  * @description 宫格组件一般用于同时展示多个同类项目的场景,可以给宫格的项目设置徽标组件(badge),或者图标等,也可以扩展为左右滑动的轮播形式。
@@ -23,7 +25,7 @@
23
25
  */
24
26
  export default {
25
27
  name: 'u-grid',
26
- mixins: [uni.$u.mpMixin, uni.$u.mixin,props],
28
+ mixins: [mpMixin, mixin, props],
27
29
  data() {
28
30
  return {
29
31
  index: 0,
@@ -1,14 +1,15 @@
1
+ import defprops from '../../libs/config/props';
1
2
  export default {
2
3
  props: {
3
4
  // 宫格的name
4
5
  name: {
5
6
  type: [String, Number, null],
6
- default: uni.$u.props.gridItem.name
7
+ default: defprops.gridItem.name
7
8
  },
8
9
  // 背景颜色
9
10
  bgColor: {
10
11
  type: String,
11
- default: uni.$u.props.gridItem.bgColor
12
+ default: defprops.gridItem.bgColor
12
13
  }
13
14
  }
14
15
  }
@@ -26,6 +26,8 @@
26
26
 
27
27
  <script>
28
28
  import props from './props.js';
29
+ import mpMixin from '../../libs/mixin/mpMixin.js';
30
+ import mixin from '../../libs/mixin/mixin.js';
29
31
  /**
30
32
  * gridItem 提示
31
33
  * @description 宫格组件一般用于同时展示多个同类项目的场景,可以给宫格的项目设置徽标组件(badge),或者图标等,也可以扩展为左右滑动的轮播形式。搭配u-grid使用
@@ -38,7 +40,7 @@
38
40
  */
39
41
  export default {
40
42
  name: "u-grid-item",
41
- mixins: [uni.$u.mpMixin, uni.$u.mixin,props],
43
+ mixins: [mpMixin, mixin, props],
42
44
  data() {
43
45
  return {
44
46
  parentData: {
@@ -1,89 +1,90 @@
1
+ import defprops from '../../libs/config/props';
1
2
  export default {
2
3
  props: {
3
4
  // 图标类名
4
5
  name: {
5
6
  type: String,
6
- default: uni.$u.props.icon.name
7
+ default: defprops.icon.name
7
8
  },
8
9
  // 图标颜色,可接受主题色
9
10
  color: {
10
11
  type: String,
11
- default: uni.$u.props.icon.color
12
+ default: defprops.icon.color
12
13
  },
13
14
  // 字体大小,单位px
14
15
  size: {
15
16
  type: [String, Number],
16
- default: uni.$u.props.icon.size
17
+ default: defprops.icon.size
17
18
  },
18
19
  // 是否显示粗体
19
20
  bold: {
20
21
  type: Boolean,
21
- default: uni.$u.props.icon.bold
22
+ default: defprops.icon.bold
22
23
  },
23
24
  // 点击图标的时候传递事件出去的index(用于区分点击了哪一个)
24
25
  index: {
25
26
  type: [String, Number],
26
- default: uni.$u.props.icon.index
27
+ default: defprops.icon.index
27
28
  },
28
29
  // 触摸图标时的类名
29
30
  hoverClass: {
30
31
  type: String,
31
- default: uni.$u.props.icon.hoverClass
32
+ default: defprops.icon.hoverClass
32
33
  },
33
34
  // 自定义扩展前缀,方便用户扩展自己的图标库
34
35
  customPrefix: {
35
36
  type: String,
36
- default: uni.$u.props.icon.customPrefix
37
+ default: defprops.icon.customPrefix
37
38
  },
38
39
  // 图标右边或者下面的文字
39
40
  label: {
40
41
  type: [String, Number],
41
- default: uni.$u.props.icon.label
42
+ default: defprops.icon.label
42
43
  },
43
44
  // label的位置,只能右边或者下边
44
45
  labelPos: {
45
46
  type: String,
46
- default: uni.$u.props.icon.labelPos
47
+ default: defprops.icon.labelPos
47
48
  },
48
49
  // label的大小
49
50
  labelSize: {
50
51
  type: [String, Number],
51
- default: uni.$u.props.icon.labelSize
52
+ default: defprops.icon.labelSize
52
53
  },
53
54
  // label的颜色
54
55
  labelColor: {
55
56
  type: String,
56
- default: uni.$u.props.icon.labelColor
57
+ default: defprops.icon.labelColor
57
58
  },
58
59
  // label与图标的距离
59
60
  space: {
60
61
  type: [String, Number],
61
- default: uni.$u.props.icon.space
62
+ default: defprops.icon.space
62
63
  },
63
64
  // 图片的mode
64
65
  imgMode: {
65
66
  type: String,
66
- default: uni.$u.props.icon.imgMode
67
+ default: defprops.icon.imgMode
67
68
  },
68
69
  // 用于显示图片小图标时,图片的宽度
69
70
  width: {
70
71
  type: [String, Number],
71
- default: uni.$u.props.icon.width
72
+ default: defprops.icon.width
72
73
  },
73
74
  // 用于显示图片小图标时,图片的高度
74
75
  height: {
75
76
  type: [String, Number],
76
- default: uni.$u.props.icon.height
77
+ default: defprops.icon.height
77
78
  },
78
79
  // 用于解决某些情况下,让图标垂直居中的用途
79
80
  top: {
80
81
  type: [String, Number],
81
- default: uni.$u.props.icon.top
82
+ default: defprops.icon.top
82
83
  },
83
84
  // 是否阻止事件传播
84
85
  stop: {
85
86
  type: Boolean,
86
- default: uni.$u.props.icon.stop
87
+ default: defprops.icon.stop
87
88
  }
88
89
  }
89
90
  }
@@ -49,7 +49,9 @@
49
49
  // 引入图标名称,已经对应的unicode
50
50
  import icons from './icons'
51
51
 
52
- import props from './props.js';;
52
+ import props from './props.js';
53
+ import mpMixin from '../../libs/mixin/mpMixin.js';
54
+ import mixin from '../../libs/mixin/mixin.js';
53
55
 
54
56
  /**
55
57
  * icon 图标
@@ -84,7 +86,7 @@
84
86
 
85
87
  }
86
88
  },
87
- mixins: [uni.$u.mpMixin, uni.$u.mixin,props],
89
+ mixins: [mpMixin, mixin, props],
88
90
  computed: {
89
91
  uClasses() {
90
92
  let classes = []
@@ -1,84 +1,85 @@
1
+ import defprops from '../../libs/config/props';
1
2
  export default {
2
3
  props: {
3
4
  // 图片地址
4
5
  src: {
5
6
  type: String,
6
- default: uni.$u.props.image.src
7
+ default: defprops.image.src
7
8
  },
8
9
  // 裁剪模式
9
10
  mode: {
10
11
  type: String,
11
- default: uni.$u.props.image.mode
12
+ default: defprops.image.mode
12
13
  },
13
14
  // 宽度,单位任意
14
15
  width: {
15
16
  type: [String, Number],
16
- default: uni.$u.props.image.width
17
+ default: defprops.image.width
17
18
  },
18
19
  // 高度,单位任意
19
20
  height: {
20
21
  type: [String, Number],
21
- default: uni.$u.props.image.height
22
+ default: defprops.image.height
22
23
  },
23
24
  // 图片形状,circle-圆形,square-方形
24
25
  shape: {
25
26
  type: String,
26
- default: uni.$u.props.image.shape
27
+ default: defprops.image.shape
27
28
  },
28
29
  // 圆角,单位任意
29
30
  radius: {
30
31
  type: [String, Number],
31
- default: uni.$u.props.image.radius
32
+ default: defprops.image.radius
32
33
  },
33
34
  // 是否懒加载,微信小程序、App、百度小程序、字节跳动小程序
34
35
  lazyLoad: {
35
36
  type: Boolean,
36
- default: uni.$u.props.image.lazyLoad
37
+ default: defprops.image.lazyLoad
37
38
  },
38
39
  // 开启长按图片显示识别微信小程序码菜单
39
40
  showMenuByLongpress: {
40
41
  type: Boolean,
41
- default: uni.$u.props.image.showMenuByLongpress
42
+ default: defprops.image.showMenuByLongpress
42
43
  },
43
44
  // 加载中的图标,或者小图片
44
45
  loadingIcon: {
45
46
  type: String,
46
- default: uni.$u.props.image.loadingIcon
47
+ default: defprops.image.loadingIcon
47
48
  },
48
49
  // 加载失败的图标,或者小图片
49
50
  errorIcon: {
50
51
  type: String,
51
- default: uni.$u.props.image.errorIcon
52
+ default: defprops.image.errorIcon
52
53
  },
53
54
  // 是否显示加载中的图标或者自定义的slot
54
55
  showLoading: {
55
56
  type: Boolean,
56
- default: uni.$u.props.image.showLoading
57
+ default: defprops.image.showLoading
57
58
  },
58
59
  // 是否显示加载错误的图标或者自定义的slot
59
60
  showError: {
60
61
  type: Boolean,
61
- default: uni.$u.props.image.showError
62
+ default: defprops.image.showError
62
63
  },
63
64
  // 是否需要淡入效果
64
65
  fade: {
65
66
  type: Boolean,
66
- default: uni.$u.props.image.fade
67
+ default: defprops.image.fade
67
68
  },
68
69
  // 只支持网络资源,只对微信小程序有效
69
70
  webp: {
70
71
  type: Boolean,
71
- default: uni.$u.props.image.webp
72
+ default: defprops.image.webp
72
73
  },
73
74
  // 过渡时间,单位ms
74
75
  duration: {
75
76
  type: [String, Number],
76
- default: uni.$u.props.image.duration
77
+ default: defprops.image.duration
77
78
  },
78
79
  // 背景颜色,用于深色页面加载图片时,为了和背景色融合
79
80
  bgColor: {
80
81
  type: String,
81
- default: uni.$u.props.image.bgColor
82
+ default: defprops.image.bgColor
82
83
  }
83
84
  }
84
- }
85
+ }
@@ -65,6 +65,8 @@
65
65
 
66
66
  <script>
67
67
  import props from './props.js';
68
+ import mpMixin from '../../libs/mixin/mpMixin.js';
69
+ import mixin from '../../libs/mixin/mixin.js';
68
70
  /**
69
71
  * Image 图片
70
72
  * @description 此组件为uni-app的image组件的加强版,在继承了原有功能外,还支持淡入动画、加载中、加载失败提示、圆角值和形状等。
@@ -93,7 +95,7 @@
93
95
  */
94
96
  export default {
95
97
  name: 'u-image',
96
- mixins: [uni.$u.mpMixin, uni.$u.mixin, props],
98
+ mixins: [mpMixin, mixin, props],
97
99
  data() {
98
100
  return {
99
101
  // 图片是否加载错误,如果是,则显示错误占位图
@@ -134,7 +136,7 @@
134
136
  // 如果是显示圆形,设置一个很多的半径值即可
135
137
  style.borderRadius = this.shape == 'circle' ? '10000px' : uni.$u.addUnit(this.radius)
136
138
  // 如果设置圆角,必须要有hidden,否则可能圆角无效
137
- style.overflow = this.borderRadius > 0 ? 'hidden' : 'visible'
139
+ style.overflow = this.radius > 0 ? 'hidden' : 'visible'
138
140
  // if (this.fade) {
139
141
  // style.opacity = this.opacity
140
142
  // // nvue下,这几个属性必须要分开写