refactor: 重构移动端页面布局与资源路径,优化打包配置
1. 新增layout.uts统一管理页面尺寸与安全区计算 2. 修正图片资源路径到static/mobile目录 3. 调整App.vue与AppIcon组件样式适配多端 4. 为微信小程序配置打包忽略规则减少包体积 5. 修复API请求错误抛出类型,完善类型定义 6. 补充README文档说明项目运行与维护规范 7. 优化多个页面的样式与生命周期逻辑
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<view class="page">
|
||||
<view class="page" :style="pageStyle()">
|
||||
<AppHeader title="我的融资档案" />
|
||||
<view class="archive-content">
|
||||
<view class="completion"><view class="completion-head"><text class="completion-title">档案完整度 75%</text><text class="completion-score">75%</text></view><text class="completion-desc">完善信息可获得更精准的融资方案</text><view class="progress-track"><view class="progress-bar"></view></view></view>
|
||||
@@ -10,14 +10,32 @@
|
||||
</template>
|
||||
|
||||
<script setup lang="uts">
|
||||
import { usePageLayout } from '@/services/layout.uts'
|
||||
const { pageStyle } = usePageLayout()
|
||||
import AppHeader from '@/components/AppHeader.uvue'
|
||||
import AppIcon from '@/components/AppIcon.uvue'
|
||||
const archiveItems = [{ icon: 'file-text', name: '基本信息', done: true }, { icon: 'income', name: '经营 / 收入信息', done: true }, { icon: 'asset', name: '资产 / 负债信息', done: true }, { icon: 'authorization', name: '资料授权', done: false }]
|
||||
type ArchiveItem = { icon: string, name: string, done: boolean }
|
||||
const archiveItems: ArchiveItem[] = [{ icon: 'file-text', name: '基本信息', done: true }, { icon: 'income', name: '经营 / 收入信息', done: true }, { icon: 'asset', name: '资产 / 负债信息', done: true }, { icon: 'authorization', name: '资料授权', done: false }]
|
||||
const edit = (name: string) => { uni.showToast({ title: '编辑' + name, icon: 'none' }) }
|
||||
const complete = () => { uni.navigateTo({ url: '/pages/assessment/assessment' }) }
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.archive-content { padding: 26rpx 28rpx; }.completion { padding: 30rpx; border-radius: 18rpx; background: linear-gradient(140deg, #e9f3ff, #f8fbff); border: 1rpx solid #dce9fa; }.completion-head { flex-direction: row; justify-content: space-between; align-items: center; }.completion-title { font-size: 30rpx; font-weight: 800; }.completion-score { color: #0868f7; font-size: 27rpx; font-weight: 800; }.completion-desc { color: #748196; font-size: 22rpx; margin-top: 12rpx; }.progress-track { height: 15rpx; border-radius: 8rpx; background-color: #dce8f6; margin-top: 24rpx; overflow: hidden; }.progress-bar { width: 75%; height: 15rpx; border-radius: 8rpx; background-color: #0868f7; }
|
||||
.archive-list { margin-top: 24rpx; background-color: #fff; border: 1rpx solid #e5ecf5; border-radius: 18rpx; padding: 0 24rpx; }.archive-row { height: 110rpx; flex-direction: row; align-items: center; border-bottom: 1rpx solid #edf1f6; }.archive-icon { width: 54rpx; height: 54rpx; border-radius: 17rpx; background-color: #e8f2ff; color: #0868f7; align-items: center; justify-content: center; font-size: 21rpx; font-weight: 800; margin-right: 17rpx; }.archive-name { flex: 1; font-size: 25rpx; }.state { font-size: 22rpx; margin-right: 14rpx; }.done { color: #11aa76; }.pending { color: #ff7917; }.chevron { color: #a7b2c1; font-size: 36rpx; }.complete-button { margin-top: 34rpx; }
|
||||
.archive-content { padding: 26rpx 28rpx; }
|
||||
.completion { padding: 30rpx; border-radius: 18rpx; background: linear-gradient(140deg, #e9f3ff, #f8fbff); border: 1rpx solid #dce9fa; }
|
||||
.completion-head { flex-direction: row; justify-content: space-between; align-items: center; }
|
||||
.completion-title { font-size: 30rpx; font-weight: 800; }
|
||||
.completion-score { color: #0868f7; font-size: 27rpx; font-weight: 800; }
|
||||
.completion-desc { color: #748196; font-size: 22rpx; margin-top: 12rpx; }
|
||||
.progress-track { height: 15rpx; border-radius: 8rpx; background-color: #dce8f6; margin-top: 24rpx; overflow: hidden; }
|
||||
.progress-bar { width: 75%; height: 15rpx; border-radius: 8rpx; background-color: #0868f7; }
|
||||
.archive-list { margin-top: 24rpx; background-color: #fff; border: 1rpx solid #e5ecf5; border-radius: 18rpx; padding: 0 24rpx; }
|
||||
.archive-row { height: 110rpx; flex-direction: row; align-items: center; border-bottom: 1rpx solid #edf1f6; }
|
||||
.archive-icon { width: 54rpx; height: 54rpx; border-radius: 17rpx; background-color: #e8f2ff; color: #0868f7; align-items: center; justify-content: center; font-size: 21rpx; font-weight: 800; margin-right: 17rpx; }
|
||||
.archive-name { flex: 1; font-size: 25rpx; }
|
||||
.state { font-size: 22rpx; margin-right: 14rpx; }
|
||||
.done { color: #11aa76; }
|
||||
.pending { color: #ff7917; }
|
||||
.chevron { color: #a7b2c1; font-size: 36rpx; }
|
||||
.complete-button { margin-top: 34rpx; }
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user