tmui-cli 2.0.4 → 2.0.5

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 (105) hide show
  1. package/data/components.json +1 -1
  2. package/data/config.json +1 -1
  3. package/data/doc-index.json +1 -1
  4. package/data/examples/radio.vue +4 -0
  5. package/data/guides//346/233/264/346/226/260/346/227/245/345/277/227.md +2 -0
  6. package/data/tmui4x/60.AI/350/207/252/345/212/250/345/214/226/01.Agent.md +42 -16
  7. package/data/tmui4x/60.AI/350/207/252/345/212/250/345/214/226/04.SKILL.md +9 -8
  8. package/data/tmui4x-doc-index.json +1 -1
  9. package/data/uni-app-x-docs/.vuepress/utils/cssJson.json +1 -1
  10. package/data/uni-app-x-docs/.vuepress/utils/example-mapping.json +7 -0
  11. package/data/uni-app-x-docs/.vuepress/utils/utsApiJson.json +1 -1
  12. package/data/uni-app-x-docs/.vuepress/utils/utsComJson.json +1 -1
  13. package/data/uni-app-x-docs/.vuepress/utils/vueJson.json +1 -1
  14. package/data/uni-app-x-docs/_sidebar.md +6 -1
  15. package/data/uni-app-x-docs/api/get-location.md +6 -6
  16. package/data/uni-app-x-docs/api/modal.md +2 -1
  17. package/data/uni-app-x-docs/api/request.md +1 -0
  18. package/data/uni-app-x-docs/api/toast.md +2 -2
  19. package/data/uni-app-x-docs/api/window.md +2 -0
  20. package/data/uni-app-x-docs/collocation/app.md +10 -5
  21. package/data/uni-app-x-docs/collocation/manifest-android.md +15 -15
  22. package/data/uni-app-x-docs/collocation/manifest-ios.md +17 -16
  23. package/data/uni-app-x-docs/collocation/manifest-modules.md +10 -10
  24. package/data/uni-app-x-docs/component/map.md +10 -8
  25. package/data/uni-app-x-docs/component/video.md +8 -4
  26. package/data/uni-app-x-docs/css/_sidebar.md +0 -1
  27. package/data/uni-app-x-docs/css/common/function.md +8 -4
  28. package/data/uni-app-x-docs/css/common/selector.md +2 -0
  29. package/data/uni-app-x-docs/mp/README.md +0 -4
  30. package/data/uni-app-x-docs/mp/native-component-and-wxs.md +166 -0
  31. package/data/uni-app-x-docs/native/download/android.md +106 -19
  32. package/data/uni-app-x-docs/native/download/ios.md +11 -9
  33. package/data/uni-app-x-docs/page.md +2 -0
  34. package/data/uni-app-x-docs/project.md +6 -7
  35. package/data/uni-app-x-docs/release-note-alpha.md +142 -0
  36. package/data/uni-app-x-docs/release.md +263 -0
  37. package/data/uni-app-x-docs/select/native-render-and-self-render.md +386 -0
  38. package/data/uni-app-x-docs/tutorial/android-16kb.md +5 -1
  39. package/data/uni-app-x-docs/tutorial/app-env.md +1 -1
  40. package/data/uni-app-x-docs/tutorial/app-update-wgt.md +13 -0
  41. package/data/uni-app-x-docs/tutorial/store.md +0 -1
  42. package/data/uni-app-x-docs/uts/README.md +27 -25
  43. package/data/uni-app-x-docs/vue/README.md +64 -29
  44. package/data/uni-app-x-docs/vue/built-in.md +1 -1
  45. package/data/uni-app-x-docs/vue/component.md +1 -1
  46. package/data/uni-app-x-docs/vue/composition-api.md +6 -19
  47. package/data/uni-app-x-docs/vue/global-api.md +1 -1
  48. package/data/uniappx/_sidebar.md +6 -1
  49. package/data/uniappx/api/create-editor-context-async.md +3 -3
  50. package/data/uniappx/api/get-app-base-info.md +14 -14
  51. package/data/uniappx/api/get-file-system-manager.md +2 -2
  52. package/data/uniappx/api/get-location.md +6 -6
  53. package/data/uniappx/api/modal.md +2 -1
  54. package/data/uniappx/api/on-tab-bar-mid-button-tap.md +4 -4
  55. package/data/uniappx/api/request.md +1 -0
  56. package/data/uniappx/api/toast.md +4 -4
  57. package/data/uniappx/api/window.md +2 -0
  58. package/data/uniappx/collocation/app.md +10 -5
  59. package/data/uniappx/collocation/manifest-android.md +15 -15
  60. package/data/uniappx/collocation/manifest-ios.md +17 -16
  61. package/data/uniappx/collocation/manifest-modules.md +10 -10
  62. package/data/uniappx/component/checkbox.md +2 -2
  63. package/data/uniappx/component/input.md +9 -15
  64. package/data/uniappx/component/label.md +4 -3
  65. package/data/uniappx/component/map.md +19 -14
  66. package/data/uniappx/component/swiper.md +31 -67
  67. package/data/uniappx/component/switch.md +3 -9
  68. package/data/uniappx/component/textarea.md +4 -8
  69. package/data/uniappx/component/uni-ui-x/uni-badge-view.md +2 -2
  70. package/data/uniappx/component/uni-ui-x/uni-collapse.md +11 -55
  71. package/data/uniappx/component/uni-ui-x/uni-fab-button.md +1 -1
  72. package/data/uniappx/component/uni-ui-x/uni-link.md +1 -1
  73. package/data/uniappx/component/uni-ui-x/uni-number-box.md +2 -2
  74. package/data/uniappx/component/uni-ui-x/uni-rate.md +2 -2
  75. package/data/uniappx/component/uni-ui-x/uni-refresh-box.md +1 -1
  76. package/data/uniappx/component/uni-ui-x/uni-tab.md +44 -2
  77. package/data/uniappx/component/video.md +16 -13
  78. package/data/uniappx/component/web-view.md +10 -21
  79. package/data/uniappx/css/_sidebar.md +1 -2
  80. package/data/uniappx/css/common/function.md +7 -4
  81. package/data/uniappx/css/common/selector.md +14 -14
  82. package/data/uniappx/mp/README.md +0 -4
  83. package/data/uniappx/mp/native-component-and-wxs.md +151 -0
  84. package/data/uniappx/native/download/android.md +106 -19
  85. package/data/uniappx/native/download/ios.md +11 -9
  86. package/data/uniappx/page.md +2 -0
  87. package/data/uniappx/project.md +5 -6
  88. package/data/uniappx/release-note-alpha.md +142 -0
  89. package/data/uniappx/release.md +263 -0
  90. package/data/uniappx/select/native-render-and-self-render.md +382 -0
  91. package/data/uniappx/tutorial/android-16kb.md +5 -1
  92. package/data/uniappx/tutorial/app-env.md +1 -1
  93. package/data/uniappx/tutorial/app-update-wgt.md +9 -0
  94. package/data/uniappx/uts/README.md +27 -25
  95. package/data/uniappx/vue/README.md +11 -82
  96. package/data/uniappx/vue/built-in.md +2 -2
  97. package/data/uniappx/vue/component.md +1 -1
  98. package/data/uniappx/vue/composition-api.md +2 -86
  99. package/data/uniappx/vue/global-api.md +1 -1
  100. package/data/uniappx/vue/modifier.md +3 -3
  101. package/data/uniappx-doc-index.json +44 -16
  102. package/dist/main.mjs +1 -1
  103. package/package.json +1 -1
  104. package/data/uni-app-x-docs/css/css_diff_web.md +0 -802
  105. package/data/uniappx/css/css_diff_web.md +0 -802
@@ -317,10 +317,8 @@ if (view != null && view instanceof UITextView) {
317
317
  :selection-start="data.selectionStart" :selection-end="data.selectionEnd" @blur="onSelectionBlurChange" />
318
318
  </view>
319
319
 
320
- <view class="title-wrap">
321
- <view>设置hold-keyboard</view>
322
- <switch style="margin-left: 10px;" @change="changeHoldKeyboard" :checked="data.hold_keyboard"></switch>
323
- </view>
320
+ <boolean-data :defaultValue="data.hold_keyboard" title="设置hold-keyboard"
321
+ @change="changeHoldKeyboard"></boolean-data>
324
322
  <view class="textarea-wrap">
325
323
  <textarea class="textarea-instance" :hold-keyboard="data.hold_keyboard" />
326
324
  </view>
@@ -332,10 +330,8 @@ if (view != null && view instanceof UITextView) {
332
330
  <textarea id="both-model-value" class="textarea-instance" v-model='data.defaultModel' value='456'></textarea>
333
331
  </view>
334
332
 
335
- <view class="title-wrap">
336
- <view>设置adjust-position</view>
337
- <switch style="margin-left: 10px;" @change="changeAdjustPosition" :checked="data.adjust_position"></switch>
338
- </view>
333
+ <boolean-data :defaultValue="data.adjust_position" title="设置adjust-position"
334
+ @change="changeAdjustPosition"></boolean-data>
339
335
  <view class="textarea-wrap">
340
336
  <textarea class="textarea-instance" :adjust-position="data.adjust_position" />
341
337
  </view>
@@ -65,10 +65,10 @@ badge组件的badge-class和badge-style属性,直接作用在角标view上,
65
65
  ```vue
66
66
  <template>
67
67
 
68
- <scroll-view style="flex: 1;padding: 20px 5px 5px;">
68
+ <scroll-view class="uni-theme-root" style="flex: 1;padding: 20px 5px 5px;">
69
69
 
70
70
 
71
- <view style="padding: 20px 5px 5px;">
71
+ <view class="uni-theme-root" style="padding: 20px 5px 5px;">
72
72
 
73
73
  <uni-badge-view text="99+" >
74
74
  <view style="width: 50px; height: 20px; background-color: green;"></view>
@@ -123,21 +123,22 @@ uni-collapse-item的标题栏的自定义:
123
123
  >示例
124
124
  ```vue
125
125
  <template>
126
- <scroll-view class="page uni-theme-root">
126
+
127
+ <scroll-view class="page">
127
128
  <view class="section">
128
129
  <text class="section-title">手风琴模式</text>
129
130
  <uni-collapse :accordion="true">
130
- <uni-collapse-item class="theme-collapse-item" title="面板 A(默认展开)" :open="data.enableOpen" @change="onPanelAChange" title-wrap-class="theme-collapse-title-wrap" title-class="theme-collapse-title" content-wrap-class="theme-collapse-content-wrap" arrow-class="theme-collapse-arrow">
131
+ <uni-collapse-item title="面板 A(默认展开)" :open="data.enableOpen" @change="onPanelAChange">
131
132
  <view class="content-box" @click="onPanelAClick">
132
133
  <text class="content-text">手风琴模式下,同时只会保持一个面板展开。点击当前标题会自动收起其他面板。</text>
133
134
  </view>
134
135
  </uni-collapse-item>
135
- <uni-collapse-item class="theme-collapse-item" title="面板 B" @change="onPanelBChange" title-wrap-class="theme-collapse-title-wrap" title-class="theme-collapse-title" content-wrap-class="theme-collapse-content-wrap" arrow-class="theme-collapse-arrow">
136
+ <uni-collapse-item title="面板 B" @change="onPanelBChange">
136
137
  <view id="panel-b" class="content-box">
137
138
  <text class="content-text">当前项展开时,其他已展开的项会自动收起。这里用于验证切换动画和事件回调。</text>
138
139
  </view>
139
140
  </uni-collapse-item>
140
- <uni-collapse-item class="theme-collapse-item" title="禁用项" :disabled="true" title-wrap-class="theme-collapse-title-wrap" title-class="theme-collapse-title" content-wrap-class="theme-collapse-content-wrap" arrow-class="theme-collapse-arrow">
141
+ <uni-collapse-item title="禁用项" :disabled="true">
141
142
  <view class="content-box">
142
143
  <text class="content-text">禁用状态下不会响应点击,也不会触发展开或收起。</text>
143
144
  </view>
@@ -148,7 +149,7 @@ uni-collapse-item的标题栏的自定义:
148
149
  <view class="section">
149
150
  <text class="section-title">普通模式-可同时展开的分组折叠列表</text>
150
151
  <uni-collapse :accordion="false">
151
- <uni-collapse-item v-for="(group, index) in categoryGroups" :key="group.title" class="theme-collapse-item" :title="group.title" @change="onCategoryChange(group.title, $event as boolean)" title-wrap-class="theme-collapse-title-wrap" title-class="theme-collapse-title" content-wrap-class="theme-collapse-content-wrap" arrow-class="theme-collapse-arrow">
152
+ <uni-collapse-item v-for="(group, index) in categoryGroups" :key="group.title" :title="group.title" @change="onCategoryChange(group.title, $event as boolean)">
152
153
  <view class="category-list">
153
154
  <view v-for="(item, itemIndex) in group.items" :key="item.title" class="category-list-item"
154
155
  :class="{'category-list-item--last': itemIndex == group.items.length - 1}">
@@ -163,17 +164,17 @@ uni-collapse-item的标题栏的自定义:
163
164
  <view class="section">
164
165
  <text class="section-title">externalClass 示例</text>
165
166
  <uni-collapse :accordion="false">
166
- <uni-collapse-item class="theme-collapse-item" title="自定义标题文字" title-wrap-class="theme-collapse-title-wrap" title-class="theme-collapse-title demo-title-emphasis" content-wrap-class="theme-collapse-content-wrap" arrow-class="theme-collapse-arrow">
167
+ <uni-collapse-item title="自定义标题文字" title-class="demo-title-emphasis">
167
168
  <view class="content-box">
168
169
  <text class="content-text">通过 title-class 可以覆盖 title 属性对应 text 组件的样式。</text>
169
170
  </view>
170
171
  </uni-collapse-item>
171
- <uni-collapse-item class="theme-collapse-item" title="自定义箭头样式" title-wrap-class="theme-collapse-title-wrap" title-class="theme-collapse-title" content-wrap-class="theme-collapse-content-wrap" arrow-class="theme-collapse-arrow demo-arrow-large">
172
+ <uni-collapse-item title="自定义箭头样式" arrow-class="demo-arrow-large">
172
173
  <view class="content-box">
173
174
  <text class="content-text">通过 arrow-class 可以覆盖默认箭头 view 的尺寸、边框粗细和颜色。</text>
174
175
  </view>
175
176
  </uni-collapse-item>
176
- <uni-collapse-item class="theme-collapse-item" title="同时自定义标题和箭头" title-wrap-class="theme-collapse-title-wrap" title-class="theme-collapse-title demo-title-accent" content-wrap-class="theme-collapse-content-wrap" arrow-class="theme-collapse-arrow demo-arrow-accent">
177
+ <uni-collapse-item title="同时自定义标题和箭头" title-class="demo-title-accent" arrow-class="demo-arrow-accent">
177
178
  <view class="content-box">
178
179
  <text class="content-text">title-class 和 arrow-class 可以组合使用。</text>
179
180
  </view>
@@ -184,7 +185,7 @@ uni-collapse-item的标题栏的自定义:
184
185
  <view class="section">
185
186
  <text class="section-title">具名插槽标题</text>
186
187
  <uni-collapse :accordion="false">
187
- <uni-collapse-item class="theme-collapse-item" title-wrap-class="theme-collapse-title-wrap" content-wrap-class="theme-collapse-content-wrap" arrow-class="theme-collapse-arrow">
188
+ <uni-collapse-item>
188
189
  <template #title="{ open, disabled }">
189
190
  <view class="slot-title-wrap">
190
191
  <view class="slot-title-icon" :class="{'slot-title-icon--open': open, 'slot-title-icon--disabled': disabled}"></view>
@@ -196,7 +197,7 @@ uni-collapse-item的标题栏的自定义:
196
197
  <text class="content-text">通过 #title 可以自定义标题区域结构,例如在文字前增加图标、状态徽标和辅助说明。</text>
197
198
  </view>
198
199
  </uni-collapse-item>
199
- <uni-collapse-item class="theme-collapse-item" title-wrap-class="theme-collapse-title-wrap" content-wrap-class="theme-collapse-content-wrap" arrow-class="theme-collapse-arrow">
200
+ <uni-collapse-item>
200
201
  <template #title="{ open }">
201
202
  <view class="slot-title-wrap">
202
203
  <view class="slot-title-icon slot-title-icon--secondary" :class="{'slot-title-icon--open': open}"></view>
@@ -248,21 +249,6 @@ uni-collapse-item的标题栏的自定义:
248
249
  padding: 12px;
249
250
  }
250
251
 
251
- .theme-collapse-item,
252
- .theme-collapse-title-wrap,
253
- .theme-collapse-content-wrap {
254
- background-color: #ffffff;
255
- }
256
-
257
- .theme-collapse-title {
258
- color: #333333;
259
- }
260
-
261
- .theme-collapse-arrow {
262
- border-right-color: #999999;
263
- border-bottom-color: #999999;
264
- }
265
-
266
252
  .section {
267
253
  margin-bottom: 12px;
268
254
  border-radius: 8px;
@@ -530,36 +516,6 @@ uni-collapse-item的标题栏的自定义:
530
516
  font-size: 13px;
531
517
  color: #2563eb;
532
518
  }
533
-
534
- @media (prefers-color-scheme: dark) {
535
- .theme-collapse-item,
536
- .theme-collapse-title-wrap,
537
- .theme-collapse-content-wrap {
538
- background-color: #2d2d2d;
539
- }
540
-
541
- .theme-collapse-title {
542
- color: #ffffff;
543
- }
544
-
545
- .theme-collapse-arrow {
546
- border-right-color: #ffffff;
547
- border-bottom-color: #ffffff;
548
- }
549
-
550
- .demo-title-accent {
551
- color: #5eead4;
552
- }
553
-
554
- .demo-arrow-accent {
555
- border-right-color: #5eead4;
556
- border-bottom-color: #5eead4;
557
- }
558
-
559
- .slot-title-note {
560
- color: #cbd5e1;
561
- }
562
- }
563
519
  </style>
564
520
 
565
521
  ```
@@ -42,7 +42,7 @@ source: https://gitcode.com/dcloud/uni-ui-x/tree/alpha/uni_modules/uni-fab-butto
42
42
  >示例
43
43
  ```vue
44
44
  <template>
45
- <view style="flex: 1;position: relative;padding: 15px 15px 0 15px;">
45
+ <view class="uni-theme-root" style="flex: 1;position: relative;padding: 15px 15px 0 15px;">
46
46
  <text class="label first-label">标准uni-fab-button</text>
47
47
  <uni-fab-button></uni-fab-button>
48
48
  <text class="label">自定义fab样式</text>
@@ -84,7 +84,7 @@ source: https://gitcode.com/dcloud/uni-ui-x/tree/alpha/uni_modules/uni-link
84
84
  >示例
85
85
  ```vue
86
86
  <template>
87
- <scroll-view class="page">
87
+ <scroll-view class="page uni-theme-root">
88
88
  <view class="section">
89
89
  <text class="section-title">基础用法</text>
90
90
  <view class="link-block">
@@ -97,10 +97,10 @@ source: https://gitcode.com/dcloud/uni-ui-x/tree/alpha/uni_modules/uni-number-bo
97
97
  ```vue
98
98
  <template>
99
99
 
100
- <scroll-view style="flex: 1; padding: 15px;">
100
+ <scroll-view class="uni-theme-root" style="flex: 1; padding: 15px;">
101
101
 
102
102
 
103
- <view style="padding: 15px;">
103
+ <view class="uni-theme-root" style="padding: 15px;">
104
104
 
105
105
  <text class="page-title">NumberBox 数字输入框</text>
106
106
 
@@ -70,10 +70,10 @@ rate组件有onChange事件,事件回调中会给出点击触发的新评分
70
70
  ```vue
71
71
  <template>
72
72
 
73
- <scroll-view style="flex: 1;padding: 15px 15px 30px 15px;">
73
+ <scroll-view class="uni-theme-root" style="flex: 1;padding: 15px 15px 30px 15px;">
74
74
 
75
75
 
76
- <view style="padding: 15px 15px 30px 15px;">
76
+ <view class="uni-theme-root" style="padding: 15px 15px 30px 15px;">
77
77
 
78
78
  <text class="desc">评分组件用于商品评价打分、服务态度评价、用户满意度等场景。\n
79
79
  高性能模式仅有一个text组件,不可修改评分,适合长列表中显示的场景。\n
@@ -88,7 +88,7 @@ source: https://gitcode.com/dcloud/uni-ui-x/tree/alpha/uni_modules/uni-refresh-b
88
88
  >示例
89
89
  ```vue
90
90
  <template>
91
- <view style="flex: 1;">
91
+ <view class="uni-theme-root" style="flex: 1;">
92
92
  <scroll-view
93
93
  style="flex: 1;"
94
94
  :refresher-enabled="true"
@@ -452,7 +452,7 @@ source: https://gitcode.com/dcloud/uni-ui-x/tree/alpha/uni_modules/uni-tab-bar
452
452
  >示例
453
453
  ```vue
454
454
  <template>
455
- <uni-tab style="flex: 1" :active-index="activeIndex" :tab-bar-height="40" @change="handleChange">
455
+ <uni-tab class="uni-theme-root" style="flex: 1" :active-index="activeIndex" :tab-bar-height="40" @change="handleChange">
456
456
  <uni-tab-content>
457
457
  <view class="custom-panel custom-panel-emerald">
458
458
  <text class="custom-panel-kicker">自定义 tab-bar</text>
@@ -562,6 +562,23 @@ source: https://gitcode.com/dcloud/uni-ui-x/tree/alpha/uni_modules/uni-tab-bar
562
562
  .custom-tab-label-active {
563
563
  color: #1d9f5f;
564
564
  }
565
+
566
+ @media (prefers-color-scheme: dark) {
567
+ .custom-panel-emerald { background-color: #17372a; }
568
+ .custom-panel-sand { background-color: #43331f; }
569
+ .custom-panel-ink { background-color: #26363b; }
570
+
571
+ .custom-panel-kicker,
572
+ .custom-panel-desc,
573
+ .custom-tab-label {
574
+ color: rgba(255, 255, 255, 0.68);
575
+ }
576
+
577
+ .custom-panel-title { color: #ffffff; }
578
+ .custom-tab-list-shell { background-color: #242424; }
579
+ .custom-tab-list-root { background: linear-gradient(to right, #40301e, #173b34); }
580
+ .custom-tab-label-active { color: #5ee29b; }
581
+ }
565
582
  </style>
566
583
 
567
584
  ```
@@ -576,7 +593,7 @@ source: https://gitcode.com/dcloud/uni-ui-x/tree/alpha/uni_modules/uni-tab-bar
576
593
  >示例
577
594
  ```vue
578
595
  <template>
579
- <uni-tab style="flex: 1" :active-index="activeIndex" :tab-bar-height="TAB_BAR_HEIGHT" :tab-content-height-full="tabContentHeightFull" @change="handleChange">
596
+ <uni-tab class="uni-theme-root" style="flex: 1" :active-index="activeIndex" :tab-bar-height="TAB_BAR_HEIGHT" :tab-content-height-full="tabContentHeightFull" @change="handleChange">
580
597
  <uni-tab-content :style="tabContentStyle">
581
598
  <scroll-view class="blur-scroll blur-scene-morning" direction="vertical">
582
599
  <view class="blur-content-inner">
@@ -831,6 +848,31 @@ source: https://gitcode.com/dcloud/uni-ui-x/tree/alpha/uni_modules/uni-tab-bar
831
848
  .blur-tab-label-active {
832
849
  color: #0f766e;
833
850
  }
851
+
852
+ @media (prefers-color-scheme: dark) {
853
+ .blur-scene-morning,
854
+ .blur-scene-coral,
855
+ .blur-scene-ink {
856
+ background-color: #1a1a1a;
857
+ }
858
+
859
+ .blur-title,
860
+ .blur-card-title {
861
+ color: #ffffff;
862
+ }
863
+
864
+ .blur-desc,
865
+ .blur-card-desc,
866
+ .blur-tab-label {
867
+ color: rgba(255, 255, 255, 0.72);
868
+ }
869
+
870
+ .blur-card-blue { background-color: #18324d; }
871
+ .blur-card-green { background-color: #19382d; }
872
+ .blur-card-yellow { background-color: #493b18; }
873
+ .blur-card-coral { background-color: #492823; }
874
+ .blur-tab-label-active { color: #5eead4; }
875
+ }
834
876
  </style>
835
877
 
836
878
  ```
@@ -308,14 +308,20 @@ UniVideoReuseEvent -- Extends --> UniCustomEvent&ltUniVideoReuseEventDetail&gt
308
308
 
309
309
  ### app平台组件实现
310
310
 
311
- #### HBuilderX5.08及以上版本
312
- App-Android平台使用 ExoPlayer 库实现,不再支持 codec、play-strategy 属性
313
- App-iOS平台使用系统 AVPlayer 实现,不再支持 codec、play-strategy 属性
311
+ #### HBuilderX5.08及以上版本
312
+ - App-Android平台 使用 Google ExoPlayer 库实现,不再支持 codec、play-strategy 属性
313
+ - App-iOS平台 使用iOS系统自带的AVPlayer 实现,不再支持 codec、play-strategy 属性
314
+ - App-Harmony平台 使用系统video实现
315
+
316
+ 新版本放弃ijkplayer,主要原因是该库原作者已不维护。使用系统的video虽然会损失一些功能,如下:
314
317
 
315
318
  > 不再支持流媒体 rtmp/rtsp,仅支持hls协议
316
319
  > 不再支持flv视频格式
317
320
 
321
+ 但系统video的性能、质量和包体积占用更有优势。
322
+
318
323
  #### HBuilderX5.08以下版本
324
+
319
325
  App-Android/iOS平台video组件使用ijkplayer库实现:[https://github.com/bilibili/ijkplayer](https://github.com/bilibili/ijkplayer);
320
326
 
321
327
  弹幕功能使用DanmakuFlameMaster库实现:[https://github.com/bilibili/DanmakuFlameMaster](https://github.com/bilibili/DanmakuFlameMaster)
@@ -324,8 +330,6 @@ ijkplayer库底层又使用了ffmpeg,这些库的功能较多,官方的video
324
330
 
325
331
  video组件的源码[详见](https://gitcode.com/dcloud/uni-component/tree/master/uni_modules/uni-video)。下载该uni_modules到工程下,修改源码打包,可覆盖内置的video组件。
326
332
 
327
- 另外ijkplayer作为一个开源库,比腾讯视频等商业sdk仍有差距。如无法在开源库上满足需求,可在插件市场寻找其他插件:见插件市场[视频播放](https://ext.dcloud.net.cn/search?q=%E8%A7%86%E9%A2%91%E6%92%AD%E6%94%BE&orderBy=Relevance&uni-appx=1)
328
-
329
333
  ### 子组件 @children-tags
330
334
  支持所有组件
331
335
 
@@ -418,18 +422,17 @@ video的操作api为[uni.createVideoContext()](../api/create-video-context.md)
418
422
  <button type="primary" @click="openDialogPageVideo">dialogPage 视频格式示例</button>
419
423
  </view>
420
424
 
421
- <view class="uni-row uni-btn-v" style="justify-content: space-between;align-items: center;">
422
- <text class="uni-title" style="width: 80%;">全屏后自定义 controls</text>
423
- <switch :checked="data.subCompControlsEnable" @change="onSubCompControlsEnable" />
424
- </view>
425
- <view class="uni-row uni-btn-v" style="justify-content: space-between;align-items: center;">
425
+ <boolean-data :defaultValue="data.subCompControlsEnable" title="全屏后自定义 controls"
426
+ @change="onSubCompControlsEnable"></boolean-data>
427
+ <view>
426
428
 
427
- <text class="uni-title" style="width: 80%;">子组件实现快进、快退、发送弹幕功能(全屏后显示)</text>
429
+ <boolean-data :defaultValue="data.subCompEnable" title="子组件实现快进、快退、发送弹幕功能(全屏后显示)"
430
+ @change="onSubCompEnableChange"></boolean-data>
428
431
 
429
432
 
430
- <text class="uni-title" style="width: 80%;">子组件实现快进、快退功能(全屏后显示)</text>
433
+ <boolean-data :defaultValue="data.subCompEnable" title="子组件实现快进、快退功能(全屏后显示)"
434
+ @change="onSubCompEnableChange"></boolean-data>
431
435
 
432
- <switch :checked="data.subCompEnable" @change="onSubCompEnableChange" />
433
436
  </view>
434
437
  <view class="uni-title">
435
438
  <text class="uni-title-text">API示例</text>
@@ -275,27 +275,16 @@ App平台 web-view 组件可在 scroll-view、list-view/list-item 等可滚动
275
275
  </navigator>
276
276
  </view>
277
277
 
278
-
279
- <view class="uni-row uni-btn-v">
280
- <view class="uni-row uni-flex-item align-items-center">
281
- <text>显示横向滚动条</text>
282
- <switch :checked="true" @change="changeHorizontalScrollBarAccess"></switch>
283
- </view>
284
- <view class="uni-row uni-flex-item align-items-center">
285
- <text>显示竖向滚动条</text>
286
- <switch :checked="true" @change="changeVerticalScrollBarAccess"></switch>
287
- </view>
288
- </view>
289
- <view class="uni-row uni-btn-v">
290
- <view class="uni-row uni-flex-item align-items-center">
291
- <text>开启bounces</text>
292
- <switch :checked="true" @change="changeBounces"></switch>
293
-
294
- <text>禁用选择菜单</text>
295
- <switch :checked="false" @change="changeDisableUserSelectMenu"></switch>
296
-
297
- </view>
298
- </view>
278
+
279
+ <boolean-data :defaultValue="true" title="显示横向滚动条"
280
+ @change="changeHorizontalScrollBarAccess"></boolean-data>
281
+ <boolean-data :defaultValue="true" title="显示竖向滚动条"
282
+ @change="changeVerticalScrollBarAccess"></boolean-data>
283
+ <boolean-data :defaultValue="true" title="开启bounces" @change="changeBounces"></boolean-data>
284
+
285
+ <boolean-data :defaultValue="false" title="禁用选择菜单"
286
+ @change="changeDisableUserSelectMenu"></boolean-data>
287
+
299
288
 
300
289
 
301
290
  <view class="uni-row uni-btn-v" v-if="isProd() === false">
@@ -100,5 +100,4 @@
100
100
  * [visibility](visibility.md)
101
101
  * [white-space](white-space.md)
102
102
  * [width](width.md)
103
- * [z-index](z-index.md)
104
- * [uni-app x CSS 和标准 CSS 的差异](css_diff_web.md)
103
+ * [z-index](z-index.md)
@@ -36,11 +36,14 @@ CSS自定义变量规范参考[MDN Reference](https://developer.mozilla.org/zh-C
36
36
  App平台相比web平台,有以下差异:
37
37
  - 定义变量时不支持值为var(--*) ex: --color: var(--color)
38
38
  - 回退值不支持var(--*) ex: --height: var(--height1 , var(--height2))
39
- - App平台 VDOM模式transtion暂不支持使用var,App平台 蒸汽模式仅transtion长写属性支持var
40
- - App平台 VDOM模式的部分组件的样式不支持CSS变量:input、textarea 的 placeholder-style、placeholder-class;picker-view 的 indicator-style、indicator-class、mask-style、mask-class。
41
- - 蒸汽模式的部分组件使用了useComputedStyle,这类组件的样式支持CSS变量需HBuilderX 5.25+,包括input、textarea、loading组件的class。
39
+ - App平台蒸汽模式的部分组件使用了useComputedStyle,这类组件的样式支持CSS变量需HBuilderX 5.25+,包括input、textarea、loading组件的class。
42
40
  - App平台不支持:root伪类。蒸汽模式可以使用page选择器替代。vdom模式需要自行在页面根元素或合适的父级元素的class中定义css变量,以便在子元素生效。
43
41
 
42
+ App平台 VDOM模式注意事项:
43
+ - App平台 VDOM模式简写属性(如padding、margin等)不支持使用var,比如:--padding: 10px 20px; padding: var(--padding);。需展开后使用,比如展开成padding-left。
44
+ - App平台 VDOM模式transtion暂不支持使用var。App平台 蒸汽模式仅transtion长写属性支持var
45
+ - App平台 VDOM模式的部分组件的样式不支持CSS变量:input、textarea 的 placeholder-style、placeholder-class;picker-view 的 indicator-style、indicator-class、mask-style、mask-class。
46
+
44
47
  ### 示例
45
48
  示例为[hello uni-app x alpha分支](https://gitcode.com/dcloud/hello-uni-app-x/blob/prod_alpha/pages/CSS/variable/variable.uvue),与最新HBuilderX Alpha版同步。与最新正式版同步的master分支示例[另见](https://gitcode.com/dcloud/hello-uni-app-x/blob/master//pages/CSS/variable/variable.uvue)
46
49
  ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/CSS/variable/variable
@@ -614,7 +617,7 @@ web平台的 CSS环境变量规范参考[MDN Reference](https://developer.mozill
614
617
  ```
615
618
 
616
619
  ## calc @calc
617
- > uni-app x 5.27+ App平台 蒸汽模式支持calc方法
620
+ > uni-app x 5.31+ App平台 蒸汽模式支持calc方法
618
621
 
619
622
  calc() 函数允许在声明 CSS 属性值时执行计算。
620
623
 
@@ -4,20 +4,20 @@
4
4
  - web端可以使用`html`、`body`、`:root`等选择器。由于页面的css样式隔离,且html节点并未添加data-xxx属性,`html`、`:root`写在页面style内无效,只能写在App.uvue内。
5
5
  - 深度选择器 `:deep()/::v-deep` 用法参考 [单文件 style - 深度选择器](/vue/index#scoped) 文档。
6
6
 
7
- | 名称 | 示例 | Web | Android | iOS(VDOM) | iOS(Vapor) | HarmonyOS(VDOM) | HarmonyOS(Vapor) | 描述 |
8
- | :- | :- | :- | :- | :- | :- | :- | :- | :- |
9
- | 通配选择器 | * {} | 4.0 | x | x | x | x | x | |
10
- | 类选择器 | .class {} | 4.0 | 3.9 | 4.11 | 5.11 | 4.61 | 5.0 | |
11
- | 元素选择器 | \[tag] {} | 4.0 | x | x | x | x | x | App平台蒸汽模式支持page选择器 |
12
- | ID 选择器 | #\[id] {} | 4.0 | x | x | x | x | x | |
13
- | 属性选择器 | \[attr] {} | 4.0 | x | x | x | x | x | |
14
- | 分组选择器 | .a, .b {} | 4.0 | 3.9 | 4.11 | 5.11 | 4.61 | 5.0 | |
15
- | 直接子代选择器 | .a > .b {} | 4.0 | 3.9 | 4.11 | | 4.61 | x | |
16
- | 后代选择器 | .a .b {} | 4.0 | 3.9 | 4.11 | x | 4.61 | x | |
17
- | 一般兄弟选择器 | .a ~ .b {} | 4.0 | 3.9 | 4.11 | x | 4.61 | x | |
18
- | 紧邻兄弟选择器 | .a + .b {} | 4.0 | 3.9 | 4.11 | x | 4.61 | x | |
19
- | 伪类选择器 | :active {} | 4.0 | x | x | x | x | x | |
20
- | 伪元素选择器 | ::before {} | 4.0 | x | x | x | x | x | |
7
+ | 名称 | 示例 | Web | Android(VDOM) | Android(Vapor) | iOS(VDOM) | iOS(Vapor) | HarmonyOS(VDOM) | HarmonyOS(Vapor) | 描述 |
8
+ | :- | :- | :- | :- | :- | :- | :- | :- | :- | :- |
9
+ | 通配选择器 | * {} | 4.0 | x | | x | x | x | x | |
10
+ | 类选择器 | .class {} | 4.0 | 3.9 | | 4.11 | 5.11 | 4.61 | 5.0 | |
11
+ | 元素选择器 | \[tag] {} | 4.0 | x | | x | x | x | x | App平台蒸汽模式支持page选择器 |
12
+ | ID 选择器 | #\[id] {} | 4.0 | x | | x | x | x | x | |
13
+ | 属性选择器 | \[attr] {} | 4.0 | x | | x | x | x | x | |
14
+ | 分组选择器 | .a, .b {} | 4.0 | 3.9 | | 4.11 | 5.11 | 4.61 | 5.0 | |
15
+ | 直接子代选择器 | .a > .b {} | 4.0 | 3.9 | x | 4.11 | x | 4.61 | x | |
16
+ | 后代选择器 | .a .b {} | 4.0 | 3.9 | x | 4.11 | x | 4.61 | x | |
17
+ | 一般兄弟选择器 | .a ~ .b {} | 4.0 | 3.9 | x | 4.11 | x | 4.61 | x | |
18
+ | 紧邻兄弟选择器 | .a + .b {} | 4.0 | 3.9 | x | 4.11 | x | 4.61 | x | |
19
+ | 伪类选择器 | :active {} | 4.0 | x | | x | x | x | x | |
20
+ | 伪元素选择器 | ::before {} | 4.0 | x | | x | x | x | x | |
21
21
 
22
22
  ::: warning 注意
23
23
  1. 选择器声明的变化可能会导致元素重新绘制。为了减少选择器变化引起的 DOM 更新数量,**当前只支持:CSS 声明的多个选择器中最后一个规则的变更对 DOM 的更新**。
@@ -18,10 +18,6 @@ uni-app x中全平台统一使用flex布局。
18
18
  uni-app x主要是在这个版本库上适配。
19
19
  已知过老的基础库版本上,scroll-view区域大小会不准确。请开发者检查并确保基础库版本大于3.7.1。
20
20
 
21
- ## uts
22
-
23
- 推荐使用uts跨端开发,但微信小程序上也支持js/ts。
24
-
25
21
  ## vue
26
22
 
27
23
  ### 自定义组件启用virtualHost带来的影响@virtualHost
@@ -0,0 +1,151 @@
1
+ # 小程序自定义组件支持
2
+
3
+ `uni-app x` 除了支持 uvue 组件之外,也实现了对原生小程序自定义组件的兼容。小程序组件不是 uvue 组件,每家小程序都有自己的组件规范,比如微信小程序的组件是 wxml、wxss ,支付宝小程序是 axml、acss。下面介绍如何在 `uni-app x` 中使用原生小程序自定义组件。
4
+
5
+ ## 创建自定义小程序目录
6
+
7
+ 原生小程序自定义组件需要放在 `uni-app x` 项目 `根路径` 的特定名称目录中,项目结构类似于
8
+
9
+ <pre v-pre="" data-lang="">
10
+ <code class="lang-" style="padding:0">
11
+ ┌─wxcomponents 微信小程序自定义组件存放目录
12
+ │ └──custom 微信小程序自定义组件
13
+ │ ├─index.js
14
+ │ ├─index.wxml
15
+ │ ├─index.json
16
+ │ └─index.wxss
17
+ ├─mycomponents 支付宝小程序自定义组件存放目录
18
+ │ └──custom 支付宝小程序自定义组件
19
+ │ ├─index.js
20
+ │ ├─index.axml
21
+ │ ├─index.json
22
+ │ └─index.acss
23
+ ├─pages
24
+ │ └─index
25
+ │ └─index.vue
26
+
27
+ ├─static
28
+ ├─main.ts
29
+ ├─App.uvue
30
+ ├─manifest.json
31
+ └─pages.json
32
+ </code>
33
+ </pre>
34
+
35
+ 目录名可以参考下方表格
36
+
37
+ | 平台 | 目录名 |
38
+ | ------------ | ------------ |
39
+ | 微信小程序 | wxcomponents |
40
+ | 支付宝小程序 | mycomponents |
41
+
42
+ 此文档要求开发者对各端小程序的**自定义组件**有一定了解,没接触过小程序**自定义组件**的可以参考:
43
+
44
+ - [微信小程序自定义组件](https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/)
45
+ - [支付宝小程序自定义组件](https://docs.alipay.com/mini/framework/custom-component-overview)
46
+
47
+ ## 使用组件
48
+
49
+ 在需要使用自定义小程序组件的页面中,添加 `usingComponents` 配置。例如,在微信小程序中:
50
+
51
+ ```json
52
+ // pages.json
53
+ {
54
+ "pages": [
55
+ {
56
+ "path": "index/index",
57
+ "style": {
58
+ "navigationBarTitleText": "首页",
59
+ "usingComponents": {
60
+ "custom": "/wxcomponents/custom/index"
61
+ }
62
+ }
63
+ }
64
+ ]
65
+ }
66
+ ```
67
+
68
+ 页面使用自定义小程序组件
69
+
70
+ ```html
71
+ <template>
72
+ <view>
73
+ <custom :title="title" @change="handleChange"></custom>
74
+ </view>
75
+ </template>
76
+
77
+ ```
78
+
79
+ # WXS
80
+
81
+ WXS 是一套运行在视图层的脚本语言,它的特点是运行在视图层。当需要避免逻辑层和渲染层交互通信折损时,可采用 WXS。
82
+
83
+ 与 WXS 类似,支付宝小程序提供了 SJS,`uni-app x` 也支持使用这些功能,并将它们编译到支付宝小程序端。
84
+
85
+ **平台差异说明**
86
+
87
+ | 微信小程序 | 支付宝小程序 |
88
+ | :--------: | :----------: |
89
+ | wxs | sjs |
90
+
91
+ 下面介绍如何在 `uni-app x` 中使用 WXS/SJS。
92
+
93
+ ## 创建 WXS/SJS 文件
94
+
95
+ 在微信小程序中,可以通过创建 `.wxs` 文件来定义 WXS 模块。例如,创建 `utils.wxs`:
96
+
97
+ ```javascript
98
+ // utils.wxs
99
+ module.exports = {
100
+ log: function () {
101
+ console.log("log");
102
+ },
103
+ };
104
+ ```
105
+
106
+ 在支付宝小程序中,可以通过创建 `.sjs` 文件来定义 SJS 模块。例如,创建 `utils.sjs`:
107
+
108
+ ```javascript
109
+ // utils.sjs
110
+ function log() {
111
+ console.log("log");
112
+ }
113
+
114
+ export default {
115
+ log,
116
+ };
117
+ ```
118
+
119
+ ## 页面使用 WXS/SJS
120
+
121
+ ```html
122
+ <template>
123
+ <view>
124
+ <image class="logo" src="/static/logo.png"></image>
125
+ <text class="title">{{title}}</text>
126
+ <button @click="utils.log">打印日志</button>
127
+ </view>
128
+ </template>
129
+
130
+ <style>
131
+ .logo {
132
+ height: 100px;
133
+ width: 100px;
134
+ margin: 100px auto 25px auto;
135
+ }
136
+
137
+ .title {
138
+ font-size: 18px;
139
+ color: #8f8f94;
140
+ text-align: center;
141
+ }
142
+ </style>
143
+ ```
144
+
145
+ ## 注意事项
146
+
147
+ - **【重要】** 编写 wxs、sjs 内容时必须遵循相应语法规范
148
+ - **【重要】** `module` 所指定的模块名不可与声明的变量或者函数内的属性重名
149
+ - 微信小程序请使用 wxs 规范,[WXS 语法参考文档](https://developers.weixin.qq.com/miniprogram/dev/reference/wxs/)
150
+ - 支付宝小程序请使用 sjs 规范,[SJS 语法参考文档](https://docs.alipay.com/mini/framework/sjs)
151
+ - 支付宝小程序 sjs 只能定义在 .sjs 文件中,然后使用 `<script>` 标签引入,不支持在 uvue 文件中直接编写