create-weapp-vite 2.0.77 → 2.0.78

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 (42) hide show
  1. package/dist/cli.js +1 -1
  2. package/dist/index.js +1 -1
  3. package/dist/{src-6A45YX6O.js → src-CCWjAwFU.js} +3 -3
  4. package/package.json +1 -1
  5. package/templates/default/.vscode/settings.json +69 -0
  6. package/templates/default/src/components/HelloWorld/HelloWorld.ts +4 -2
  7. package/templates/default/src/pages/index/index.ts +4 -2
  8. package/templates/default/src/pages/layouts/index.ts +3 -2
  9. package/templates/lib/.vscode/settings.json +69 -0
  10. package/templates/lib/package.json +1 -1
  11. package/templates/lib/src/components/HelloWorld/HelloWorld.ts +4 -2
  12. package/templates/lib/src/pages/index/index.ts +4 -2
  13. package/templates/lib/src/pages/layouts/index.ts +3 -2
  14. package/templates/tailwindcss/.vscode/settings.json +69 -0
  15. package/templates/tailwindcss/src/components/HelloWorld/HelloWorld.ts +4 -2
  16. package/templates/tailwindcss/src/pages/index/index.ts +4 -3
  17. package/templates/tailwindcss/src/pages/layouts/index.ts +3 -2
  18. package/templates/tdesign/.vscode/settings.json +69 -0
  19. package/templates/tdesign/src/components/HelloWorld/HelloWorld.ts +4 -2
  20. package/templates/tdesign/src/pages/index/index.ts +4 -3
  21. package/templates/tdesign/src/pages/layouts/index.ts +3 -2
  22. package/templates/vant/.vscode/settings.json +69 -0
  23. package/templates/vant/src/components/HelloWorld/HelloWorld.ts +4 -2
  24. package/templates/vant/src/pages/index/index.ts +4 -3
  25. package/templates/vant/src/pages/layouts/index.scss +1 -1
  26. package/templates/vant/src/pages/layouts/index.ts +3 -2
  27. package/templates/vant/src/pages/layouts/index.wxml +17 -5
  28. package/templates/wevu/.vscode/settings.json +69 -0
  29. package/templates/wevu/src/app.vue +10 -7
  30. package/templates/wevu-tdesign/.vscode/settings.json +69 -0
  31. package/templates/wevu-tdesign/src/app.vue +6 -3
  32. package/templates/wevu-tdesign/src/components/FilterBar/index.vue +3 -2
  33. package/templates/wevu-tdesign/src/hooks/usePullDownRefresh.ts +6 -5
  34. package/templates/wevu-tdesign/src/pages/ability/index.vue +59 -55
  35. package/templates/wevu-tdesign/src/pages/data/index.vue +3 -2
  36. package/templates/wevu-tdesign/src/pages/form/index.vue +2 -20
  37. package/templates/wevu-tdesign/src/pages/index/index.vue +4 -3
  38. package/templates/wevu-tdesign/src/pages/layouts/index.vue +5 -4
  39. package/templates/wevu-tdesign/src/subpackages/ability/index.vue +4 -7
  40. package/templates/wevu-tdesign/src/subpackages/lab/class-binding/index.vue +5 -24
  41. package/templates/wevu-tdesign/src/subpackages/lab/index.vue +12 -10
  42. package/templates/wevu-tdesign/src/utils/changeEvent.ts +53 -0
@@ -1,7 +1,9 @@
1
1
  <script setup lang="ts">
2
+ import { wpi } from '@wevu/api'
2
3
  import { computed, ref } from 'wevu'
3
4
 
4
5
  import SectionTitle from '@/components/SectionTitle/index.vue'
6
+ import { resolveBooleanChangeValue, resolveNumberChangeValue, resolveStringChangeValue } from '@/utils/changeEvent'
5
7
 
6
8
  definePageJson({
7
9
  navigationBarTitleText: '组件实验室',
@@ -22,24 +24,24 @@ const tabs = [
22
24
  { value: 'display', label: '展示' },
23
25
  ]
24
26
 
25
- function handleTabChange(e: any) {
26
- activeTab.value = String(e.detail.value)
27
+ function handleTabChange(event: unknown) {
28
+ activeTab.value = resolveStringChangeValue(event, activeTab.value)
27
29
  }
28
30
 
29
- function handleRateChange(e: any) {
30
- rating.value = Number(e.detail.value)
31
+ function handleRateChange(event: unknown) {
32
+ rating.value = resolveNumberChangeValue(event, rating.value)
31
33
  }
32
34
 
33
- function handleSliderChange(e: any) {
34
- slider.value = Number(e.detail.value)
35
+ function handleSliderChange(event: unknown) {
36
+ slider.value = resolveNumberChangeValue(event, slider.value)
35
37
  }
36
38
 
37
- function handleToggleChange(e: any) {
38
- toggle.value = Boolean(e.detail.value)
39
+ function handleToggleChange(event: unknown) {
40
+ toggle.value = resolveBooleanChangeValue(event, !toggle.value)
39
41
  }
40
42
 
41
- function navigateTo(url: string) {
42
- wx.navigateTo({
43
+ async function navigateTo(url: string) {
44
+ await wpi.navigateTo({
43
45
  url,
44
46
  })
45
47
  }
@@ -0,0 +1,53 @@
1
+ type PrimitiveValue = string | number | boolean
2
+
3
+ function hasSameType<T extends PrimitiveValue>(value: unknown, fallback: T): value is T {
4
+ return typeof value === typeof fallback
5
+ }
6
+
7
+ /**
8
+ * @description 从小程序组件变更事件中提取值,兼容值直传、detail 直传和 detail.value 结构。
9
+ */
10
+ export function resolveChangeValue<T extends PrimitiveValue>(event: unknown, fallback: T): T {
11
+ if (hasSameType(event, fallback)) {
12
+ return event
13
+ }
14
+
15
+ if (event && typeof event === 'object') {
16
+ const payload = event as Record<string, any>
17
+ if (hasSameType(payload.value, fallback)) {
18
+ return payload.value
19
+ }
20
+
21
+ const detail = payload.detail
22
+ if (hasSameType(detail, fallback)) {
23
+ return detail
24
+ }
25
+
26
+ if (detail && typeof detail === 'object' && hasSameType(detail.value, fallback)) {
27
+ return detail.value
28
+ }
29
+ }
30
+
31
+ return fallback
32
+ }
33
+
34
+ /**
35
+ * @description 从小程序组件变更事件中提取字符串值。
36
+ */
37
+ export function resolveStringChangeValue(event: unknown, fallback = '') {
38
+ return resolveChangeValue(event, fallback)
39
+ }
40
+
41
+ /**
42
+ * @description 从小程序组件变更事件中提取数字值。
43
+ */
44
+ export function resolveNumberChangeValue(event: unknown, fallback = 0) {
45
+ return Number(resolveChangeValue(event, fallback))
46
+ }
47
+
48
+ /**
49
+ * @description 从小程序组件变更事件中提取布尔值。
50
+ */
51
+ export function resolveBooleanChangeValue(event: unknown, fallback = false) {
52
+ return Boolean(resolveChangeValue(event, fallback))
53
+ }