Compare commits
30 Commits
main
...
base-uv-ui
Author | SHA1 | Date | |
---|---|---|---|
![]() |
01bc7ce788 | ||
![]() |
6d3b585860 | ||
![]() |
5463c83014 | ||
![]() |
8fca20ac82 | ||
![]() |
de52c0f987 | ||
![]() |
4afd3328dd | ||
![]() |
6ca0ed4d47 | ||
![]() |
41768b4457 | ||
![]() |
fb84cd217a | ||
![]() |
5ab8872c6a | ||
![]() |
5308dcb00a | ||
![]() |
ab669ce491 | ||
![]() |
03317eefb1 | ||
![]() |
ee383968a5 | ||
![]() |
b8c593e957 | ||
![]() |
34dc7c071d | ||
![]() |
ac05ba415e | ||
![]() |
f500c48482 | ||
![]() |
6c80163673 | ||
![]() |
e6a0997c2e | ||
![]() |
1eb4cab66f | ||
![]() |
749ff30f80 | ||
![]() |
4a5d8f9cb8 | ||
![]() |
5c18e0e8ec | ||
![]() |
668ff750b2 | ||
![]() |
1272f9bd8f | ||
![]() |
f6c7a27bcb | ||
![]() |
ca04b37b6b | ||
![]() |
3c09e54b9a | ||
![]() |
2f7c60856b |
31
.github/release.yml
vendored
31
.github/release.yml
vendored
@ -1,31 +0,0 @@
|
||||
categories:
|
||||
- title: 🚀 新功能
|
||||
labels: [feat, feature]
|
||||
- title: 🛠️ 修复
|
||||
labels: [fix, bugfix]
|
||||
- title: 💅 样式
|
||||
labels: [style]
|
||||
- title: 📄 文档
|
||||
labels: [docs]
|
||||
- title: ⚡️ 性能
|
||||
labels: [perf]
|
||||
- title: 🧪 测试
|
||||
labels: [test]
|
||||
- title: ♻️ 重构
|
||||
labels: [refactor]
|
||||
- title: 📦 构建
|
||||
labels: [build]
|
||||
- title: 🚨 补丁
|
||||
labels: [patch, hotfix]
|
||||
- title: 🌐 发布
|
||||
labels: [release, publish]
|
||||
- title: 🔧 流程
|
||||
labels: [ci, cd, workflow]
|
||||
- title: ⚙️ 配置
|
||||
labels: [config, chore]
|
||||
- title: 📁 文件
|
||||
labels: [file]
|
||||
- title: 🎨 格式化
|
||||
labels: [format]
|
||||
- title: 🔀 其他
|
||||
labels: [other, misc]
|
80
.github/workflows/auto-merge.yml
vendored
80
.github/workflows/auto-merge.yml
vendored
@ -1,80 +0,0 @@
|
||||
name: Auto Merge Main to Other Branches
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
workflow_dispatch: # 手动触发
|
||||
|
||||
jobs:
|
||||
merge-to-i18n:
|
||||
name: Merge main into i18n
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
token: ${{ secrets.GH_TOKEN_AUTO_MERGE }}
|
||||
|
||||
- name: Merge main into i18n
|
||||
run: |
|
||||
git config user.name "GitHub Actions"
|
||||
git config user.email "actions@github.com"
|
||||
git checkout i18n
|
||||
git merge main --no-ff -m "Auto merge main into i18n"
|
||||
git push origin i18n
|
||||
|
||||
merge-to-base-sard-ui:
|
||||
name: Merge main into base-sard-ui
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
token: ${{ secrets.GH_TOKEN_AUTO_MERGE }}
|
||||
|
||||
- name: Merge main into base-sard-ui
|
||||
run: |
|
||||
git config user.name "GitHub Actions"
|
||||
git config user.email "actions@github.com"
|
||||
git checkout base-sard-ui
|
||||
git merge main --no-ff -m "Auto merge main into base-sard-ui"
|
||||
git push origin base-sard-ui
|
||||
|
||||
merge-to-base-uv-ui:
|
||||
name: Merge main into base-uv-ui
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
token: ${{ secrets.GH_TOKEN_AUTO_MERGE }}
|
||||
|
||||
- name: Merge main into base-uv-ui
|
||||
run: |
|
||||
git config user.name "GitHub Actions"
|
||||
git config user.email "actions@github.com"
|
||||
git checkout base-uv-ui
|
||||
git merge main --no-ff -m "Auto merge main into base-uv-ui"
|
||||
git push origin base-uv-ui
|
||||
|
||||
merge-to-base-uview-plus:
|
||||
name: Merge main into base-uview-plus
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
token: ${{ secrets.GH_TOKEN_AUTO_MERGE }}
|
||||
|
||||
- name: Merge main into base-uview-plus
|
||||
run: |
|
||||
git config user.name "GitHub Actions"
|
||||
git config user.email "actions@github.com"
|
||||
git checkout base-uview-plus
|
||||
git merge main --no-ff -m "Auto merge main into base-uview-plus"
|
||||
git push origin base-uview-plus
|
119
.github/workflows/release-log.yml
vendored
119
.github/workflows/release-log.yml
vendored
@ -1,119 +0,0 @@
|
||||
name: Auto Release
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- 'v*'
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
pull-requests: read
|
||||
issues: read
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Install yq
|
||||
run: sudo snap install yq
|
||||
|
||||
- name: Generate changelog
|
||||
id: changelog
|
||||
env:
|
||||
CONFIG_FILE: .github/release.yml
|
||||
run: |
|
||||
# 解析配置文件
|
||||
declare -A category_map
|
||||
while IFS=";" read -r title labels; do
|
||||
for label in $labels; do
|
||||
category_map[$label]="$title"
|
||||
done
|
||||
done < <(yq -o=tsv '.categories[] | [.title, (.labels | join(" "))] | join(";")' $CONFIG_FILE)
|
||||
# 获取版本范围
|
||||
mapfile -t tags < <(git tag -l --sort=-version:refname)
|
||||
current_tag=${tags[0]}
|
||||
previous_tag=${tags[1]:-}
|
||||
if [[ -z "$previous_tag" ]]; then
|
||||
commit_range="$current_tag"
|
||||
echo "首次发布版本: $current_tag"
|
||||
else
|
||||
commit_range="$previous_tag..$current_tag"
|
||||
echo "版本范围: $commit_range"
|
||||
fi
|
||||
# 获取所有符合规范的提交
|
||||
commits=$(git log --pretty=format:"%s|%h" "$commit_range")
|
||||
# 生成分类日志
|
||||
declare -A log_entries
|
||||
while IFS="|" read -r subject hash; do
|
||||
# type=$(echo "$subject" | cut -d':' -f1 | tr -d ' ')
|
||||
type=$(echo "$subject" | sed -E 's/^([[:alnum:]]+)(\(.*\))?:.*/\1/' | tr -d ' ')
|
||||
found=0
|
||||
for label in "${!category_map[@]}"; do
|
||||
if [[ "$type" == "$label" ]]; then
|
||||
entry="- ${subject} (${hash:0:7})"
|
||||
log_entries[${category_map[$label]}]+="$entry"$'\n'
|
||||
found=1
|
||||
break
|
||||
fi
|
||||
done
|
||||
if [[ $found -eq 0 ]]; then
|
||||
entry="- ${subject} (${hash:0:7})"
|
||||
log_entries["其他"]+="$entry"$'\n'
|
||||
fi
|
||||
done <<< "$commits"
|
||||
|
||||
# 统计提交数量
|
||||
commit_count=$(git log --oneline "$commit_range" | wc -l)
|
||||
# 统计受影响的文件数量
|
||||
file_count=$(git diff --name-only "$commit_range" | wc -l)
|
||||
# 统计贡献者信息
|
||||
contributor_stats=$(git shortlog -sn "$commit_range")
|
||||
contributor_notes=""
|
||||
while IFS= read -r line; do
|
||||
commits=$(echo "$line" | awk '{print $1}')
|
||||
name=$(echo "$line" | awk '{$1=""; print $0}' | sed 's/^ //')
|
||||
contributor_notes+="- @${name} (${commits} commits)\n"
|
||||
done <<< "$contributor_stats"
|
||||
# 构建输出内容
|
||||
release_notes="## 版本更新日志 ($current_tag)\n\n"
|
||||
while IFS= read -r category; do
|
||||
if [[ -n "${log_entries[$category]}" ]]; then
|
||||
release_notes+="### $category\n${log_entries[$category]}\n"
|
||||
fi
|
||||
done < <(yq '.categories[].title' $CONFIG_FILE)
|
||||
# 构建输出内容
|
||||
release_notes="## 版本更新日志 ($current_tag)\n\n"
|
||||
current_date=$(date +"%Y-%m-%d")
|
||||
# 添加发布日期和下载统计信息
|
||||
release_notes+=" ### 📅 发布日期: ${current_date}\n"
|
||||
while IFS= read -r category; do
|
||||
if [[ -n "${log_entries[$category]}" ]]; then
|
||||
release_notes+="### $category\n${log_entries[$category]}\n"
|
||||
fi
|
||||
done < <(yq '.categories[].title' $CONFIG_FILE)
|
||||
|
||||
# 添加统计信息
|
||||
release_notes+="### 📊 统计信息\n"
|
||||
release_notes+="- 本次发布包含 ${commit_count} 个提交\n"
|
||||
release_notes+="- 影响 ${file_count} 个文件\n\n"
|
||||
# 添加贡献者信息
|
||||
release_notes+="### 👥 贡献者\n"
|
||||
release_notes+="感谢这些优秀的贡献者(按提交次数排序):\n"
|
||||
release_notes+="${contributor_notes}\n"
|
||||
release_notes+="---\n"
|
||||
# 写入文件
|
||||
echo -e "$release_notes" > changelog.md
|
||||
echo "生成日志内容:"
|
||||
cat changelog.md
|
||||
- name: Create Release
|
||||
uses: ncipollo/release-action@v1
|
||||
with:
|
||||
generateReleaseNotes: false
|
||||
bodyFile: changelog.md
|
||||
tag: ${{ github.ref_name }}
|
@ -76,6 +76,7 @@
|
||||
"lint:fix": "eslint --fix"
|
||||
},
|
||||
"dependencies": {
|
||||
"@climblee/uv-ui": "^1.1.20",
|
||||
"@dcloudio/uni-app": "3.0.0-4060620250520001",
|
||||
"@dcloudio/uni-app-harmony": "3.0.0-4060620250520001",
|
||||
"@dcloudio/uni-app-plus": "3.0.0-4060620250520001",
|
||||
@ -99,7 +100,6 @@
|
||||
"pinia": "2.0.36",
|
||||
"pinia-plugin-persistedstate": "3.2.1",
|
||||
"vue": "^3.4.21",
|
||||
"wot-design-uni": "^1.9.1",
|
||||
"z-paging": "2.8.7"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
@ -13,7 +13,8 @@ export default defineUniPages({
|
||||
autoscan: true,
|
||||
custom: {
|
||||
'^fg-(.*)': '@/components/fg-$1/fg-$1.vue',
|
||||
'^wd-(.*)': 'wot-design-uni/components/wd-$1/wd-$1.vue',
|
||||
'^uv-(.*)': '@climblee/uv-ui/components/uv-$1/uv-$1.vue',
|
||||
// 下面是z-paging 的配置
|
||||
'^(?!z-paging-refresh|z-paging-load-more)z-paging(.*)':
|
||||
'z-paging/components/z-paging$1/z-paging$1.vue',
|
||||
},
|
||||
|
21
pnpm-lock.yaml
generated
21
pnpm-lock.yaml
generated
@ -16,6 +16,9 @@ importers:
|
||||
|
||||
.:
|
||||
dependencies:
|
||||
'@climblee/uv-ui':
|
||||
specifier: ^1.1.20
|
||||
version: 1.1.20
|
||||
'@dcloudio/uni-app':
|
||||
specifier: 3.0.0-4060620250520001
|
||||
version: 3.0.0-4060620250520001(@dcloudio/types@3.4.14)(postcss@8.4.49)(rollup@4.41.1)(vue@3.5.15(typescript@5.7.2))
|
||||
@ -85,9 +88,6 @@ importers:
|
||||
vue:
|
||||
specifier: ^3.4.21
|
||||
version: 3.5.15(typescript@5.7.2)
|
||||
wot-design-uni:
|
||||
specifier: ^1.9.1
|
||||
version: 1.9.1(vue@3.5.15(typescript@5.7.2))
|
||||
z-paging:
|
||||
specifier: 2.8.7
|
||||
version: 2.8.7
|
||||
@ -935,6 +935,9 @@ packages:
|
||||
'@clack/prompts@0.11.0':
|
||||
resolution: {integrity: sha512-pMN5FcrEw9hUkZA4f+zLlzivQSeQf5dRGJjSUbvVYDLvpKCdQx5OaknvKzgbtXOizhP+SJJJjqEbOe55uKKfAw==}
|
||||
|
||||
'@climblee/uv-ui@1.1.20':
|
||||
resolution: {integrity: sha512-jkyesHJsPJkF4Nap9ZmG1/ibKlxXA5M8+ntqKXwwloIsYSYL5SOKb0gyPj17aBOU1PkJpmeiZ8PwnTolhK2/HA==}
|
||||
|
||||
'@commitlint/cli@19.8.1':
|
||||
resolution: {integrity: sha512-LXUdNIkspyxrlV6VDHWBmCZRtkEVRpBKxi2Gtw3J54cGWhLCTouVD/Q6ZSaSvd2YaDObWK8mDjrz3TIKtaQMAA==}
|
||||
engines: {node: '>=v18'}
|
||||
@ -6277,12 +6280,6 @@ packages:
|
||||
resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
wot-design-uni@1.9.1:
|
||||
resolution: {integrity: sha512-bZBt6xt5HfvmHBm76BZWBrvthHKeK7cbR//bbmv2ICjPRLXvD9KKHGZDZrq6C/j+DXHzA4UbcGer3iE8XcuVkw==}
|
||||
engines: {HBuilderX: ^3.8.7}
|
||||
peerDependencies:
|
||||
vue: '>=3.2.47'
|
||||
|
||||
wrap-ansi@7.0.0:
|
||||
resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
|
||||
engines: {node: '>=10'}
|
||||
@ -7323,6 +7320,8 @@ snapshots:
|
||||
picocolors: 1.1.1
|
||||
sisteransi: 1.0.5
|
||||
|
||||
'@climblee/uv-ui@1.1.20': {}
|
||||
|
||||
'@commitlint/cli@19.8.1(@types/node@20.17.9)(typescript@5.7.2)':
|
||||
dependencies:
|
||||
'@commitlint/format': 19.8.1
|
||||
@ -14138,10 +14137,6 @@ snapshots:
|
||||
|
||||
word-wrap@1.2.5: {}
|
||||
|
||||
wot-design-uni@1.9.1(vue@3.5.15(typescript@5.7.2)):
|
||||
dependencies:
|
||||
vue: 3.5.15(typescript@5.7.2)
|
||||
|
||||
wrap-ansi@7.0.0:
|
||||
dependencies:
|
||||
ansi-styles: 4.3.0
|
||||
|
@ -17,6 +17,7 @@ onHide(() => {
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
/* stylelint-disable selector-type-no-unknown */
|
||||
button::after {
|
||||
border: none;
|
||||
}
|
||||
|
@ -1,58 +0,0 @@
|
||||
<script lang="ts" setup>
|
||||
withDefaults(
|
||||
defineProps<{
|
||||
leftText?: string
|
||||
rightText?: string
|
||||
leftArrow?: boolean
|
||||
bordered?: boolean
|
||||
fixed?: boolean
|
||||
placeholder?: boolean
|
||||
zIndex?: number
|
||||
safeAreaInsetTop?: boolean
|
||||
leftDisabled?: boolean
|
||||
rightDisabled?: boolean
|
||||
}>(),
|
||||
{
|
||||
leftText: '返回',
|
||||
rightText: '',
|
||||
leftArrow: true,
|
||||
bordered: true,
|
||||
fixed: false,
|
||||
placeholder: true,
|
||||
zIndex: 1,
|
||||
safeAreaInsetTop: true,
|
||||
leftDisabled: false,
|
||||
rightDisabled: false,
|
||||
},
|
||||
)
|
||||
|
||||
function handleClickLeft() {
|
||||
uni.navigateBack({
|
||||
fail() {
|
||||
uni.reLaunch({
|
||||
url: '/pages/index/index',
|
||||
})
|
||||
},
|
||||
})
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<wd-navbar
|
||||
:left-text="leftText"
|
||||
:right-text="rightText"
|
||||
:left-arrow="leftArrow"
|
||||
:bordered="bordered"
|
||||
:fixed="fixed"
|
||||
:placeholder="placeholder"
|
||||
:z-index="zIndex"
|
||||
:safe-area-inset-top="safeAreaInsetTop"
|
||||
:left-disabled="leftDisabled"
|
||||
:right-disabled="rightDisabled"
|
||||
@click-left="handleClickLeft"
|
||||
>
|
||||
<template #title>
|
||||
<slot />
|
||||
</template>
|
||||
</wd-navbar>
|
||||
</template>
|
@ -1,17 +1,7 @@
|
||||
<script lang="ts" setup>
|
||||
import type { ConfigProviderThemeVars } from 'wot-design-uni'
|
||||
|
||||
const themeVars: ConfigProviderThemeVars = {
|
||||
// colorTheme: 'red',
|
||||
// buttonPrimaryBgColor: '#07c160',
|
||||
// buttonPrimaryColor: '#07c160',
|
||||
}
|
||||
</script>
|
||||
<script lang="ts" setup></script>
|
||||
|
||||
<template>
|
||||
<wd-config-provider :theme-vars="themeVars">
|
||||
<div>
|
||||
<slot />
|
||||
<wd-toast />
|
||||
<wd-message-box />
|
||||
</wd-config-provider>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -1,17 +1,7 @@
|
||||
<script lang="ts" setup>
|
||||
import type { ConfigProviderThemeVars } from 'wot-design-uni'
|
||||
|
||||
const themeVars: ConfigProviderThemeVars = {
|
||||
// colorTheme: 'red',
|
||||
// buttonPrimaryBgColor: '#07c160',
|
||||
// buttonPrimaryColor: '#07c160',
|
||||
}
|
||||
</script>
|
||||
<script lang="ts" setup></script>
|
||||
|
||||
<template>
|
||||
<wd-config-provider :theme-vars="themeVars">
|
||||
<div>
|
||||
<slot />
|
||||
<wd-toast />
|
||||
<wd-message-box />
|
||||
</wd-config-provider>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -7,9 +7,9 @@ import { tabbarList as _tabBarList, cacheTabbarEnable, selectedTabbarStrategy }
|
||||
const customTabbarEnable = selectedTabbarStrategy === 1 || selectedTabbarStrategy === 2
|
||||
/** tabbarList 里面的 path 从 pages.config.ts 得到 */
|
||||
const tabbarList = _tabBarList.map(item => ({ ...item, path: `/${item.pagePath}` }))
|
||||
function selectTabBar({ value: index }: { value: number }) {
|
||||
const url = tabbarList[index].path
|
||||
tabbarStore.setCurIdx(index)
|
||||
function selectTabBar(name: number) {
|
||||
const url = tabbarList[name].path
|
||||
tabbarStore.setCurIdx(name)
|
||||
if (cacheTabbarEnable) {
|
||||
uni.switchTab({ url })
|
||||
}
|
||||
@ -34,9 +34,11 @@ onLoad(() => {
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<wd-tabbar
|
||||
<uv-tabbar
|
||||
v-if="customTabbarEnable"
|
||||
v-model="tabbarStore.curIdx"
|
||||
:value="tabbarStore.curIdx"
|
||||
active-color="#d81e06"
|
||||
inactive-color="#7d7e80"
|
||||
bordered
|
||||
safeareainsetbottom
|
||||
placeholder
|
||||
@ -44,24 +46,40 @@ onLoad(() => {
|
||||
@change="selectTabBar"
|
||||
>
|
||||
<block v-for="(item, idx) in tabbarList" :key="item.path">
|
||||
<wd-tabbar-item v-if="item.iconType === 'uiLib'" :title="item.text" :icon="item.icon" />
|
||||
<wd-tabbar-item
|
||||
<uv-tabbar-item
|
||||
v-if="item.iconType === 'uiLib'"
|
||||
:text="item.text"
|
||||
:icon="item.icon"
|
||||
:name="idx"
|
||||
/>
|
||||
|
||||
<uv-tabbar-item
|
||||
v-else-if="item.iconType === 'unocss' || item.iconType === 'iconfont'"
|
||||
:title="item.text"
|
||||
:text="item.text"
|
||||
:name="idx"
|
||||
>
|
||||
<template #icon>
|
||||
<template #active-icon>
|
||||
<view
|
||||
h-40rpx
|
||||
w-40rpx
|
||||
class="text-[#d81e06]"
|
||||
:class="[item.icon, idx === tabbarStore.curIdx ? 'is-active' : 'is-inactive']"
|
||||
/>
|
||||
</template>
|
||||
</wd-tabbar-item>
|
||||
<wd-tabbar-item v-else-if="item.iconType === 'local'" :title="item.text">
|
||||
<template #inactive-icon>
|
||||
<view
|
||||
h-40rpx
|
||||
w-40rpx
|
||||
class="text-[#7d7e80]"
|
||||
:class="[item.icon, idx === tabbarStore.curIdx ? 'is-active' : 'is-inactive']"
|
||||
/>
|
||||
</template>
|
||||
</uv-tabbar-item>
|
||||
<uv-tabbar-item v-else-if="item.iconType === 'local'" :text="item.text" :name="idx">
|
||||
<template #icon>
|
||||
<image :src="item.icon" h-40rpx w-40rpx />
|
||||
</template>
|
||||
</wd-tabbar-item>
|
||||
</uv-tabbar-item>
|
||||
</block>
|
||||
</wd-tabbar>
|
||||
</uv-tabbar>
|
||||
</template>
|
||||
|
@ -1,19 +1,10 @@
|
||||
<script lang="ts" setup>
|
||||
import type { ConfigProviderThemeVars } from 'wot-design-uni'
|
||||
import FgTabbar from './fg-tabbar/fg-tabbar.vue'
|
||||
|
||||
const themeVars: ConfigProviderThemeVars = {
|
||||
// colorTheme: 'red',
|
||||
// buttonPrimaryBgColor: '#07c160',
|
||||
// buttonPrimaryColor: '#07c160',
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<wd-config-provider :theme-vars="themeVars">
|
||||
<view>
|
||||
<slot />
|
||||
<FgTabbar />
|
||||
<wd-toast />
|
||||
<wd-message-box />
|
||||
</wd-config-provider>
|
||||
</view>
|
||||
</template>
|
||||
|
@ -10,7 +10,7 @@
|
||||
"autoscan": true,
|
||||
"custom": {
|
||||
"^fg-(.*)": "@/components/fg-$1/fg-$1.vue",
|
||||
"^wd-(.*)": "wot-design-uni/components/wd-$1/wd-$1.vue",
|
||||
"^uv-(.*)": "@climblee/uv-ui/components/uv-$1/uv-$1.vue",
|
||||
"^(?!z-paging-refresh|z-paging-load-more)z-paging(.*)": "z-paging/components/z-paging$1/z-paging$1.vue"
|
||||
}
|
||||
},
|
||||
|
@ -61,9 +61,9 @@ function reset() {
|
||||
<!-- #endif -->
|
||||
|
||||
<!-- http://localhost:9000/#/pages/index/request -->
|
||||
<wd-button class="my-6" @click="run">
|
||||
<uv-button class="my-6" type="primary" @click="run">
|
||||
发送请求
|
||||
</wd-button>
|
||||
</uv-button>
|
||||
<view class="h-16">
|
||||
<view v-if="loading">
|
||||
loading...
|
||||
@ -77,8 +77,8 @@ function reset() {
|
||||
</view>
|
||||
</block>
|
||||
</view>
|
||||
<wd-button type="error" class="my-6" :disabled="!data" @click="reset">
|
||||
<uv-button type="warning" class="my-6" :disabled="!data" @click="reset">
|
||||
重置数据
|
||||
</wd-button>
|
||||
</uv-button>
|
||||
</view>
|
||||
</template>
|
||||
|
@ -13,9 +13,9 @@ const { loading, data, run } = useUpload()
|
||||
|
||||
<template>
|
||||
<view class="p-4 text-center">
|
||||
<wd-button @click="run">
|
||||
<uv-button type="primary" @click="run">
|
||||
选择图片并上传
|
||||
</wd-button>
|
||||
</uv-button>
|
||||
<view v-if="loading" class="h-10 text-blue">
|
||||
上传...
|
||||
</view>
|
||||
|
@ -56,7 +56,7 @@ console.log('index')
|
||||
<view class="mt-10">
|
||||
<image src="/static/logo.svg" alt="" class="mx-auto block h-28 w-28" />
|
||||
</view>
|
||||
<view class="mt-4 text-center text-4xl text-[#d14328]">
|
||||
<view class="main-title-color mt-4 text-center text-4xl">
|
||||
unibest
|
||||
</view>
|
||||
<view class="mb-8 mt-2 text-center text-2xl">
|
||||
@ -88,7 +88,7 @@ console.log('index')
|
||||
<view class="mt-4 text-center">
|
||||
模板分支是:
|
||||
<text class="text-green-500">
|
||||
base
|
||||
base-uv-ui
|
||||
</text>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -75,3 +75,5 @@ $uni-color-subtitle: #555; // 二级标题颜色
|
||||
$uni-font-size-subtitle: 18px;
|
||||
$uni-color-paragraph: #3f536e; // 文章段落颜色
|
||||
$uni-font-size-paragraph: 15px;
|
||||
|
||||
@import '@climblee/uv-ui/theme.scss';
|
@ -14,7 +14,8 @@
|
||||
"@dcloudio/types",
|
||||
"@uni-helper/uni-types",
|
||||
"@types/wechat-miniprogram",
|
||||
"wot-design-uni/global.d.ts",
|
||||
"@ttou/uv-typings/shim",
|
||||
"@ttou/uv-typings/v2",
|
||||
"z-paging/types",
|
||||
"./src/typings.d.ts"
|
||||
],
|
||||
|
@ -182,5 +182,8 @@ export default async ({ command, mode }) => {
|
||||
},
|
||||
},
|
||||
},
|
||||
optimizeDeps: {
|
||||
exclude: ['sard-uniapp'],
|
||||
},
|
||||
})
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user