Commit bc0fc281 authored by tao.huang's avatar tao.huang

feat: tabar

parent 17185812
<template>
<view class="brand-container">
<view class="content">
<!-- 品牌故事内容 -->
<text>品牌故事内容</text>
</view>
</view>
</template>
<script setup>
// 品牌故事组件逻辑
</script>
<style lang="scss" scoped>
.brand-container {
padding: 20rpx;
.content {
padding-bottom: 100rpx;
}
}
</style>
<template>
<view class="home-container">
<view class="content">
<!-- 首页内容 -->
<text>首页内容</text>
</view>
</view>
</template>
<script setup>
// 首页组件逻辑
</script>
<style lang="scss" scoped>
.home-container {
padding: 20rpx;
.content {
padding-bottom: 100rpx;
}
}
</style>
<template>
<view class="integral-container">
<view class="content">
<!-- 积分服务内容 -->
<text>积分服务内容</text>
</view>
</view>
</template>
<script setup>
// 积分服务组件逻辑
</script>
<style lang="scss" scoped>
.integral-container {
padding: 20rpx;
.content {
padding-bottom: 100rpx;
}
}
</style>
<template>
<view class="my-container">
<view class="content">
<!-- 我的页面内容 -->
<text>我的页面内容</text>
</view>
</view>
</template>
<script setup>
// 我的页面组件逻辑
</script>
<style lang="scss" scoped>
.my-container {
padding: 20rpx;
.content {
padding-bottom: 100rpx;
}
}
</style>
<template>
<view class="tab-bar">
<view
v-for="(item, index) in tabList"
:key="index"
class="tab-item"
:class="{ active: currentIndex === index }"
@click="handleTabClick(index, item)"
>
<image :src="currentIndex === index ? item.selectedIconPath : item.iconPath" class="tab-icon" />
<text class="tab-text" :class="{ active: currentIndex === index }">{{ item.text }}</text>
</view>
</view>
</template>
<script setup>
import { ref } from 'vue'
const props = defineProps({
tabList: {
type: Array,
default: () => [
{
text: '首页',
iconPath: '/static/tabBar/icon_tab_home_normal.png',
selectedIconPath: '/static/tabBar/icon_tab_home_selected.png'
},
{
text: '品牌故事',
iconPath: '/static/tabBar/icon_tab_brand_normal.png',
selectedIconPath: '/static/tabBar/icon_tab_brand_selected.png'
},
{
text: '积分服务',
iconPath: '/static/tabBar/icon_tab_gift_normal.png',
selectedIconPath: '/static/tabBar/icon_tab_gift_selected.png'
},
{
text: '我的',
iconPath: '/static/tabBar/icon_tab_person_normal.png',
selectedIconPath: '/static/tabBar/icon_tab_person_selected.png'
}
]
}
})
const emit = defineEmits(['tabClick'])
const currentIndex = ref(0)
const handleTabClick = (index, item) => {
currentIndex.value = index
emit('tabClick', { index, item })
}
</script>
<style lang="scss" scoped>
.tab-bar {
position: fixed;
bottom: 0;
left: 0;
right: 0;
height: 100rpx;
background-color: #ffffff;
display: flex;
justify-content: space-around;
align-items: center;
box-shadow: 0 -2rpx 10rpx rgba(0, 0, 0, 0.05);
.tab-item {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
.tab-icon {
width: 48rpx;
height: 48rpx;
margin-bottom: 4rpx;
}
.tab-text {
font-size: 24rpx;
color: #666;
&.active {
color: #007AFF;
}
}
}
}
</style>
\ No newline at end of file
......@@ -5,58 +5,14 @@
"style": {
"navigationBarTitleText": "首页"
}
},
{
"path" : "pages/brand/brand",
"style" :
{
"navigationBarTitleText" : "品牌"
}
},
{
"path" : "pages/integral/integral",
"style" :
{
"navigationBarTitleText" : "积分"
}
},
{
"path" : "pages/my/my",
"style" :
{
"navigationBarTitleText" : "我的"
}
}
],
"globalStyle": {
"navigationBarTextStyle": "black",
"navigationBarTitleText": "uni-app",
"navigationBarBackgroundColor": "#F8F8F8",
"backgroundColor": "#F8F8F8"
},
"tabBar": {
"color": "#999999",
"selectedColor": "#FF0000",
"backgroundColor": "#FFFFFF",
"borderStyle": "black",
"list": [
{
"pagePath": "pages/index/index",
"text": "首页"
},
{
"pagePath": "pages/brand/brand",
"text": "品牌"
},
{
"pagePath": "pages/integral/integral",
"text": "积分"
},
{
"pagePath": "pages/my/my",
"text": "我的"
}
]
"backgroundColor": "#F8F8F8",
"navigationStyle": "custom"
},
"uniIdRouter": {}
}
<template>
<view>
</view>
</template>
<script setup>
</script>
<style>
</style>
<template>
<view class="content">
<image class="logo" src="/static/logo.png"></image>
<view class="text-area">
<text class="title">{{title}}</text>
<textarea name="" id="" cols="30" rows="10"></textarea>
</view>
<view class="container">
<Home v-if="curTabIndex == 0"></Home>
<Brand v-if="curTabIndex == 1"></Brand>
<Integral v-if="curTabIndex == 2"></Integral>
<My v-if="curTabIndex == 3"></My>
<TabBar @tabClick="handleTabClick" />
</view>
</template>
<script>
import TabBar from '@/components/TabBar.vue'
import Home from '@/components/Home.vue';
import Brand from '@/components/Brand.vue';
import Integral from '@/components/Integral.vue';
import My from '@/components/My.vue';
export default {
data() {
return {
title: 'Hello'
curTabIndex: 0
};
},
onLoad() {},
methods: {
handleTabClick({
index,
item
}) {
console.log('Tab clicked:', index, item)
// 这里可以根据index或item进行相应的页面跳转或其他操作
this.curTabIndex = index
}
},
onLoad() {
components: {
TabBar,
Home,
Brand,
Integral,
My
}
};
</script>
},
methods: {
<style lang="scss" scoped>
.container {
min-height: 100vh;
background-color: #f5f5f5;
.content {
padding-bottom: 100rpx; // 为底部TabBar留出空间
}
}
</script>
<style>
.content {
display: flex;
flex-direction: column;
......@@ -51,4 +77,4 @@
font-size: 36rpx;
color: #8f8f94;
}
</style>
</style>
\ No newline at end of file
<template>
<view>
</view>
</template>
<script setup>
</script>
<style>
</style>
<template>
<view>
</view>
</template>
<script setup>
</script>
<style>
</style>
{"version":3,"names":["TabBar","home","brand","integral","my","_sfc_main","data","curTabIndex","onLoad","methods","handleTabClick","_ref","index","item","common_vendor","__f__","components","wx","createPage","MiniProgramPage"],"sources":["index.vue","index.vue?type=page"],"sourcesContent":["<template>\r\n\t<view class=\"container\">\r\n\t\t<home v-if=\"curTabIndex == 0\"></home>\n\t\t<brand v-if=\"curTabIndex == 1\"></brand>\n\t\t<integral v-if=\"curTabIndex == 2\"></integral>\n\t\t<my v-if=\"curTabIndex == 3\"></my>\r\n\t\t<TabBar @tabClick=\"handleTabClick\" />\r\n\t</view>\r\n</template>\r\n\r\n<script>\r\n\timport TabBar from '@/components/TabBar.vue'\r\n\timport home from '@/components/main/home.vue';\n\timport brand from '@/components/main/brand.vue';\n\timport integral from '@/components/main/integral.vue';\n\timport my from '@/components/main/my.vue';\r\n\r\n\texport default {\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tcurTabIndex: 0\r\n\t\t\t};\r\n\t\t},\r\n\t\tonLoad() {},\r\n\t\tmethods: {\r\n\t\t\thandleTabClick({\r\n\t\t\t\tindex,\r\n\t\t\t\titem\r\n\t\t\t}) {\r\n\t\t\t\tconsole.log('Tab clicked:', index, item)\r\n\t\t\t\t// 这里可以根据index或item进行相应的页面跳转或其他操作\r\n\t\t\t\tthis.data.curTabIndex = index\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomponents: {\r\n\t\t\tTabBar,\n\t\t\thome,\n\t\t\tbrand,\n\t\t\tintegral,\n\t\t\tmy\r\n\t\t}\r\n\t};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n\t.container {\r\n\t\tmin-height: 100vh;\r\n\t\tbackground-color: #f5f5f5;\r\n\r\n\t\t.content {\r\n\t\t\tpadding-bottom: 100rpx; // 为底部TabBar留出空间\r\n\t\t}\r\n\t}\r\n\r\n\t.content {\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\talign-items: center;\r\n\t\tjustify-content: center;\r\n\t}\r\n\r\n\t.logo {\r\n\t\theight: 200rpx;\r\n\t\twidth: 200rpx;\r\n\t\tmargin-top: 200rpx;\r\n\t\tmargin-left: auto;\r\n\t\tmargin-right: auto;\r\n\t\tmargin-bottom: 50rpx;\r\n\t}\r\n\r\n\t.text-area {\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: center;\r\n\t}\r\n\r\n\t.title {\r\n\t\tfont-size: 36rpx;\r\n\t\tcolor: #8f8f94;\r\n\t}\r\n</style>","import MiniProgramPage from '/Users/huangtao/Duiba/project/20250528_FHQ1/pages/index/index.vue'\nwx.createPage(MiniProgramPage)"],"mappings":";;;;AAWC,IAAKA,MAAA,GAAU,SAAVA,OAAA;EAAA,OAAqB;AAAA;AAC1B,IAAOC,IAAA,GAAM,SAANA,KAAA;EAAA,OAAiB;AAAA;AACxB,IAAOC,KAAA,GAAO,SAAPA,MAAA;EAAA,OAAkB;AAAA;AACzB,IAAAC,QAAA,GAAiB,SAAjBA,SAAA;EAAA,OAA4B;AAAA;AAC5B,IAAKC,EAAA,GAAM,SAANA,GAAA;EAAA,OAAiB;AAAA;AAEtB,IAAKC,SAAA,GAAU;EACdC,IAAA,WAAAA,KAAA,EAAO;IACN,OAAO;MACNC,WAAA,EAAa;IAAA;EAEd;EACDC,MAAA,WAAAA,OAAA,EAAS,CAAE;EACXC,OAAA,EAAS;IACRC,cAAA,WAAAA,eAAAC,IAAA,EAGG;MAAA,IAFFC,KAAA,GAAAD,IAAA,CAAAC,KAAA;QACAC,IAAA,GAAAF,IAAA,CAAAE,IAAA;MAEAC,aAAA,CAAAF,KAAA,CAAAG,KAAA,uCAAY,gBAAgBH,KAAA,EAAOC,IAAI;MAEvC,KAAKP,IAAA,CAAKC,WAAA,GAAcK,KAAA;IACzB;EACA;EACDI,UAAA,EAAY;IACXhB,MAAA,EAAAA,MAAA;IACAC,IAAA,EAAAA,IAAA;IACAC,KAAA,EAAAA,KAAA;IACAC,QAAA,EAAAA,QAAA;IACAC,EAAA,EAAAA;EACD;;;;;;;;;;;;;;;;;;;;;;;;ACvCFa,EAAA,CAAGC,UAAA,CAAWC,eAAe","ignoreList":[]}
\ No newline at end of file
{"version":3,"file":"app.js","sources":["App.vue","main.js"],"sourcesContent":["<script>\r\n\texport default {\r\n\t\tonLaunch: function() {\r\n\t\t\tconsole.log('App Launch')\r\n\t\t},\r\n\t\tonShow: function() {\r\n\t\t\tconsole.log('App Show')\r\n\t\t},\r\n\t\tonHide: function() {\r\n\t\t\tconsole.log('App Hide')\r\n\t\t}\r\n\t}\r\n</script>\r\n\r\n<style>\r\n\t/*每个页面公共css */\r\n</style>\n","import App from \"./App\";\r\n\r\n// #ifndef VUE3\r\nimport Vue from \"vue\";\r\nimport \"./uni.promisify.adaptor\";\r\n\r\nimport { api } from \"@/api/index.js\";\r\n\r\n// 全局挂载后使用\r\nVue.prototype.$api = api;\r\n\r\nVue.config.productionTip = false;\r\nApp.mpType = \"app\";\r\n\r\nconst app = new Vue({\r\n ...App,\r\n});\r\napp.$mount();\r\n// #endif\r\n\r\n// #ifdef VUE3\r\nimport { createSSRApp } from \"vue\";\r\nexport function createApp() {\r\n const app = createSSRApp(App);\r\n return {\r\n app,\r\n };\r\n}\r\n// #endif\r\n"],"names":["uni","createSSRApp","App"],"mappings":";;;;;;;;;AACC,MAAK,YAAU;AAAA,EACd,UAAU,WAAW;AACpBA,kBAAAA,MAAA,MAAA,OAAA,gBAAY,YAAY;AAAA,EACxB;AAAA,EACD,QAAQ,WAAW;AAClBA,kBAAAA,MAAY,MAAA,OAAA,gBAAA,UAAU;AAAA,EACtB;AAAA,EACD,QAAQ,WAAW;AAClBA,kBAAAA,MAAY,MAAA,OAAA,iBAAA,UAAU;AAAA,EACvB;AACD;ACWM,SAAS,YAAY;AAC1B,QAAM,MAAMC,2BAAaC,SAAG;AAC5B,SAAO;AAAA,IACL;AAAA,EACJ;AACA;;;"}
\ No newline at end of file
{"version":3,"file":"app.js","sources":["App.vue","main.js"],"sourcesContent":["<script>\r\n\texport default {\r\n\t\tonLaunch: function() {\r\n\t\t\tconsole.log('App Launch')\r\n\t\t},\r\n\t\tonShow: function() {\r\n\t\t\tconsole.log('App Show')\r\n\t\t},\r\n\t\tonHide: function() {\r\n\t\t\tconsole.log('App Hide')\r\n\t\t}\r\n\t}\r\n</script>\r\n\r\n<style>\r\n\t/*每个页面公共css */\r\n</style>\n","import App from \"./App\";\r\n\r\n// #ifndef VUE3\r\nimport Vue from \"vue\";\r\nimport \"./uni.promisify.adaptor\";\r\n\r\nimport { api } from \"@/api/index.js\";\r\n\r\n// 全局挂载后使用\r\nVue.prototype.$api = api;\r\n\r\nVue.config.productionTip = false;\r\nApp.mpType = \"app\";\r\n\r\nconst app = new Vue({\r\n ...App,\r\n});\r\napp.$mount();\r\n// #endif\r\n\r\n// #ifdef VUE3\r\nimport { createSSRApp } from \"vue\";\r\nexport function createApp() {\r\n const app = createSSRApp(App);\r\n return {\r\n app,\r\n };\r\n}\r\n// #endif\r\n"],"names":["uni","createSSRApp","App"],"mappings":";;;;;;AACC,MAAK,YAAU;AAAA,EACd,UAAU,WAAW;AACpBA,kBAAAA,MAAA,MAAA,OAAA,gBAAY,YAAY;AAAA,EACxB;AAAA,EACD,QAAQ,WAAW;AAClBA,kBAAAA,MAAY,MAAA,OAAA,gBAAA,UAAU;AAAA,EACtB;AAAA,EACD,QAAQ,WAAW;AAClBA,kBAAAA,MAAY,MAAA,OAAA,iBAAA,UAAU;AAAA,EACvB;AACD;ACWM,SAAS,YAAY;AAC1B,QAAM,MAAMC,2BAAaC,SAAG;AAC5B,SAAO;AAAA,IACL;AAAA,EACJ;AACA;;;"}
\ No newline at end of file
{"version":3,"file":"Brand.js","sources":["/Users/huangtao/Duiba/project/20250528_FHQ1/components/Brand.vue?type=component"],"sourcesContent":["import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/Brand.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"Home.js","sources":["/Users/huangtao/Duiba/project/20250528_FHQ1/components/Home.vue?type=component"],"sourcesContent":["import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/Home.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"Integral.js","sources":["/Users/huangtao/Duiba/project/20250528_FHQ1/components/Integral.vue?type=component"],"sourcesContent":["import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/Integral.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"My.js","sources":["/Users/huangtao/Duiba/project/20250528_FHQ1/components/My.vue?type=component"],"sourcesContent":["import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/My.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"TabBar.js","sources":["components/TabBar.vue","/Users/huangtao/Duiba/project/20250528_FHQ1/components/TabBar.vue?type=component"],"sourcesContent":["<template>\n <view class=\"tab-bar\">\n <view\n v-for=\"(item, index) in tabList\"\n :key=\"index\"\n class=\"tab-item\"\n :class=\"{ active: currentIndex === index }\"\n @click=\"handleTabClick(index, item)\"\n >\n <image :src=\"currentIndex === index ? item.selectedIconPath : item.iconPath\" class=\"tab-icon\" />\n <text class=\"tab-text\" :class=\"{ active: currentIndex === index }\">{{ item.text }}</text>\n </view>\n </view>\n</template>\n\n<script setup>\nimport { ref } from 'vue'\n\nconst props = defineProps({\n tabList: {\n type: Array,\n default: () => [\n {\n text: '首页',\n iconPath: '/static/tabBar/icon_tab_home_normal.png',\n selectedIconPath: '/static/tabBar/icon_tab_home_selected.png'\n },\n {\n text: '品牌故事',\n iconPath: '/static/tabBar/icon_tab_brand_normal.png',\n selectedIconPath: '/static/tabBar/icon_tab_brand_selected.png'\n },\n {\n text: '积分服务',\n iconPath: '/static/tabBar/icon_tab_gift_normal.png',\n selectedIconPath: '/static/tabBar/icon_tab_gift_selected.png'\n },\n {\n text: '我的',\n iconPath: '/static/tabBar/icon_tab_person_normal.png',\n selectedIconPath: '/static/tabBar/icon_tab_person_selected.png'\n }\n ]\n }\n})\n\nconst emit = defineEmits(['tabClick'])\n\nconst currentIndex = ref(0)\n\nconst handleTabClick = (index, item) => {\n currentIndex.value = index\n emit('tabClick', { index, item })\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.tab-bar {\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n height: 100rpx;\n background-color: #ffffff;\n display: flex;\n justify-content: space-around;\n align-items: center;\n box-shadow: 0 -2rpx 10rpx rgba(0, 0, 0, 0.05);\n \n .tab-item {\n flex: 1;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n height: 100%;\n \n .tab-icon {\n width: 48rpx;\n height: 48rpx;\n margin-bottom: 4rpx;\n }\n \n .tab-text {\n font-size: 24rpx;\n color: #666;\n \n &.active {\n color: #007AFF;\n }\n }\n }\n}\n</style> ","import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/TabBar.vue'\nwx.createComponent(Component)"],"names":["ref"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8CA,UAAM,OAAO;AAEb,UAAM,eAAeA,cAAG,IAAC,CAAC;AAE1B,UAAM,iBAAiB,CAAC,OAAO,SAAS;AACtC,mBAAa,QAAQ;AACrB,WAAK,YAAY,EAAE,OAAO,KAAI,CAAE;AAAA,IAClC;;;;;;;;;;;;;;;;;;ACpDA,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"Brand.js","sources":["/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/Brand.vue?type=component"],"sourcesContent":["import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/Brand.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"Home.js","sources":["/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/Home.vue?type=component"],"sourcesContent":["import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/Home.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"Integral.js","sources":["/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/Integral.vue?type=component"],"sourcesContent":["import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/Integral.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"My.js","sources":["/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/My.vue?type=component"],"sourcesContent":["import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/My.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"index.js","sources":["pages/index/index.vue","pages/index/index.vue?type=page"],"sourcesContent":["<template>\r\n\t<view class=\"content\">\r\n\t\t<image class=\"logo\" src=\"/static/logo.png\"></image>\r\n\t\t<view class=\"text-area\">\r\n\t\t\t<text class=\"title\">{{title}}</text>\n\t\t\t\n\t\t\t<textarea name=\"\" id=\"\" cols=\"30\" rows=\"10\"></textarea>\r\n\t\t</view>\r\n\t</view>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\ttitle: 'Hello'\r\n\t\t\t}\r\n\t\t},\r\n\t\tonLoad() {\r\n\r\n\t\t},\r\n\t\tmethods: {\r\n\r\n\t\t}\r\n\t}\r\n</script>\r\n\r\n<style>\r\n\t.content {\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\talign-items: center;\r\n\t\tjustify-content: center;\r\n\t}\r\n\r\n\t.logo {\r\n\t\theight: 200rpx;\r\n\t\twidth: 200rpx;\r\n\t\tmargin-top: 200rpx;\r\n\t\tmargin-left: auto;\r\n\t\tmargin-right: auto;\r\n\t\tmargin-bottom: 50rpx;\r\n\t}\r\n\r\n\t.text-area {\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: center;\r\n\t}\r\n\r\n\t.title {\r\n\t\tfont-size: 36rpx;\r\n\t\tcolor: #8f8f94;\r\n\t}\r\n</style>\n","import MiniProgramPage from '/Users/huangtao/Duiba/project/20250528_FHQ1/pages/index/index.vue'\nwx.createPage(MiniProgramPage)"],"names":[],"mappings":";;;AAYC,MAAK,YAAU;AAAA,EACd,OAAO;AACN,WAAO;AAAA,MACN,OAAO;AAAA,IACR;AAAA,EACA;AAAA,EACD,SAAS;AAAA,EAER;AAAA,EACD,SAAS,CAET;AACD;;;;;;;;ACvBD,GAAG,WAAW,eAAe;"}
\ No newline at end of file
{"version":3,"file":"index.js","sources":["pages/index/index.vue","pages/index/index.vue?type=page"],"sourcesContent":["<template>\r\n\t<view class=\"container\">\r\n\t\t<Home v-if=\"curTabIndex == 0\"></Home>\r\n\t\t<Brand v-if=\"curTabIndex == 1\"></Brand>\r\n\t\t<Integral v-if=\"curTabIndex == 2\"></Integral>\r\n\t\t<My v-if=\"curTabIndex == 3\"></My>\r\n\t\t<TabBar @tabClick=\"handleTabClick\" />\r\n\t</view>\r\n</template>\r\n\r\n<script>\r\n\timport TabBar from '@/components/TabBar.vue'\r\n\timport Home from '@/components/Home.vue';\r\n\timport Brand from '@/components/Brand.vue';\r\n\timport Integral from '@/components/Integral.vue';\r\n\timport My from '@/components/My.vue';\r\n\r\n\texport default {\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tcurTabIndex: 0\r\n\t\t\t};\r\n\t\t},\r\n\t\tonLoad() {},\r\n\t\tmethods: {\r\n\t\t\thandleTabClick({\r\n\t\t\t\tindex,\r\n\t\t\t\titem\r\n\t\t\t}) {\r\n\t\t\t\tconsole.log('Tab clicked:', index, item)\r\n\t\t\t\t// 这里可以根据index或item进行相应的页面跳转或其他操作\r\n\t\t\t\tthis.curTabIndex = index\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomponents: {\r\n\t\t\tTabBar,\r\n\t\t\tHome,\r\n\t\t\tBrand,\r\n\t\t\tIntegral,\r\n\t\t\tMy\r\n\t\t}\r\n\t};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n\t.container {\r\n\t\tmin-height: 100vh;\r\n\t\tbackground-color: #f5f5f5;\r\n\r\n\t\t.content {\r\n\t\t\tpadding-bottom: 100rpx; // 为底部TabBar留出空间\r\n\t\t}\r\n\t}\r\n\r\n\t.content {\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\talign-items: center;\r\n\t\tjustify-content: center;\r\n\t}\r\n\r\n\t.logo {\r\n\t\theight: 200rpx;\r\n\t\twidth: 200rpx;\r\n\t\tmargin-top: 200rpx;\r\n\t\tmargin-left: auto;\r\n\t\tmargin-right: auto;\r\n\t\tmargin-bottom: 50rpx;\r\n\t}\r\n\r\n\t.text-area {\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: center;\r\n\t}\r\n\r\n\t.title {\r\n\t\tfont-size: 36rpx;\r\n\t\tcolor: #8f8f94;\r\n\t}\r\n</style>","import MiniProgramPage from '/Users/huangtao/Duiba/project/20250528_FHQ1/pages/index/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni"],"mappings":";;AAWC,MAAK,SAAU,MAAW;AAC1B,aAAa,MAAW;AACxB,MAAK,QAAS,MAAW;AACzB,MAAO,WAAU,MAAW;AAC5B,MAAO,KAAI,MAAW;AAEtB,MAAK,YAAU;AAAA,EACd,OAAO;AACN,WAAO;AAAA,MACN,aAAa;AAAA;EAEd;AAAA,EACD,SAAS;AAAA,EAAE;AAAA,EACX,SAAS;AAAA,IACR,eAAe;AAAA,MACd;AAAA,MACA;AAAA,IACD,GAAG;AACFA,oBAAA,MAAA,MAAA,OAAA,+BAAY,gBAAgB,OAAO,IAAI;AAEvC,WAAK,cAAc;AAAA,IACpB;AAAA,EACA;AAAA,EACD,YAAY;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;;;;;;;;;;;;;;;;;;;;;;;;ACvCF,GAAG,WAAW,eAAe;"}
\ No newline at end of file
......@@ -3,9 +3,6 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const common_vendor = require("./common/vendor.js");
if (!Math) {
"./pages/index/index.js";
"./pages/brand/brand.js";
"./pages/integral/integral.js";
"./pages/my/my.js";
}
const _sfc_main = {
onLaunch: function() {
......
{
"pages": [
"pages/index/index",
"pages/brand/brand",
"pages/integral/integral",
"pages/my/my"
"pages/index/index"
],
"window": {
"navigationBarTextStyle": "black",
"navigationBarTitleText": "uni-app",
"navigationBarBackgroundColor": "#F8F8F8",
"backgroundColor": "#F8F8F8"
},
"tabBar": {
"color": "#999999",
"selectedColor": "#FF0000",
"backgroundColor": "#FFFFFF",
"borderStyle": "black",
"list": [
{
"pagePath": "pages/index/index",
"text": "首页"
},
{
"pagePath": "pages/brand/brand",
"text": "品牌"
},
{
"pagePath": "pages/integral/integral",
"text": "积分"
},
{
"pagePath": "pages/my/my",
"text": "我的"
}
]
"backgroundColor": "#F8F8F8",
"navigationStyle": "custom"
},
"usingComponents": {}
}
\ No newline at end of file
"use strict";
const _imports_0 = "/static/logo.png";
exports._imports_0 = _imports_0;
//# sourceMappingURL=../../.sourcemap/mp-weixin/common/assets.js.map
"use strict";
const common_vendor = require("../common/vendor.js");
const _sfc_main = {
__name: "Brand",
setup(__props) {
return (_ctx, _cache) => {
return {};
};
}
};
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-ccdca2da"]]);
wx.createComponent(Component);
//# sourceMappingURL=../../.sourcemap/mp-weixin/components/Brand.js.map
{
"component": true,
"usingComponents": {}
}
\ No newline at end of file
<view class="brand-container data-v-ccdca2da"><view class="content data-v-ccdca2da"><text class="data-v-ccdca2da">品牌故事内容</text></view></view>
\ No newline at end of file
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.brand-container.data-v-ccdca2da {
padding: 20rpx;
}
.brand-container .content.data-v-ccdca2da {
padding-bottom: 100rpx;
}
\ No newline at end of file
"use strict";
const common_vendor = require("../common/vendor.js");
const _sfc_main = {
__name: "Home",
setup(__props) {
return (_ctx, _cache) => {
return {};
};
}
};
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-66361d43"]]);
wx.createComponent(Component);
//# sourceMappingURL=../../.sourcemap/mp-weixin/components/Home.js.map
{
"component": true,
"usingComponents": {}
}
\ No newline at end of file
<view class="home-container data-v-66361d43"><view class="content data-v-66361d43"><text class="data-v-66361d43">首页内容</text></view></view>
\ No newline at end of file
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.home-container.data-v-66361d43 {
padding: 20rpx;
}
.home-container .content.data-v-66361d43 {
padding-bottom: 100rpx;
}
\ No newline at end of file
"use strict";
const common_vendor = require("../common/vendor.js");
const _sfc_main = {
__name: "Integral",
setup(__props) {
return (_ctx, _cache) => {
return {};
};
}
};
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-6b39c053"]]);
wx.createComponent(Component);
//# sourceMappingURL=../../.sourcemap/mp-weixin/components/Integral.js.map
{
"component": true,
"usingComponents": {}
}
\ No newline at end of file
<view class="integral-container data-v-6b39c053"><view class="content data-v-6b39c053"><text class="data-v-6b39c053">积分服务内容</text></view></view>
\ No newline at end of file
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.integral-container.data-v-6b39c053 {
padding: 20rpx;
}
.integral-container .content.data-v-6b39c053 {
padding-bottom: 100rpx;
}
\ No newline at end of file
"use strict";
const common_vendor = require("../common/vendor.js");
const _sfc_main = {
__name: "My",
setup(__props) {
return (_ctx, _cache) => {
return {};
};
}
};
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-5e0d8f88"]]);
wx.createComponent(Component);
//# sourceMappingURL=../../.sourcemap/mp-weixin/components/My.js.map
{
"component": true,
"usingComponents": {}
}
\ No newline at end of file
<view class="my-container data-v-5e0d8f88"><view class="content data-v-5e0d8f88"><text class="data-v-5e0d8f88">我的页面内容</text></view></view>
\ No newline at end of file
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.my-container.data-v-5e0d8f88 {
padding: 20rpx;
}
.my-container .content.data-v-5e0d8f88 {
padding-bottom: 100rpx;
}
\ No newline at end of file
"use strict";
const common_vendor = require("../common/vendor.js");
const _sfc_main = {
__name: "TabBar",
props: {
tabList: {
type: Array,
default: () => [
{
text: "首页",
iconPath: "/static/tabBar/icon_tab_home_normal.png",
selectedIconPath: "/static/tabBar/icon_tab_home_selected.png"
},
{
text: "品牌故事",
iconPath: "/static/tabBar/icon_tab_brand_normal.png",
selectedIconPath: "/static/tabBar/icon_tab_brand_selected.png"
},
{
text: "积分服务",
iconPath: "/static/tabBar/icon_tab_gift_normal.png",
selectedIconPath: "/static/tabBar/icon_tab_gift_selected.png"
},
{
text: "我的",
iconPath: "/static/tabBar/icon_tab_person_normal.png",
selectedIconPath: "/static/tabBar/icon_tab_person_selected.png"
}
]
}
},
emits: ["tabClick"],
setup(__props, { emit: __emit }) {
const emit = __emit;
const currentIndex = common_vendor.ref(0);
const handleTabClick = (index, item) => {
currentIndex.value = index;
emit("tabClick", { index, item });
};
return (_ctx, _cache) => {
return {
a: common_vendor.f(__props.tabList, (item, index, i0) => {
return {
a: currentIndex.value === index ? item.selectedIconPath : item.iconPath,
b: common_vendor.t(item.text),
c: currentIndex.value === index ? 1 : "",
d: index,
e: currentIndex.value === index ? 1 : "",
f: common_vendor.o(($event) => handleTabClick(index, item), index)
};
})
};
};
}
};
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-89ca1f91"]]);
wx.createComponent(Component);
//# sourceMappingURL=../../.sourcemap/mp-weixin/components/TabBar.js.map
{
"component": true,
"usingComponents": {}
}
\ No newline at end of file
<view class="tab-bar data-v-89ca1f91"><view wx:for="{{a}}" wx:for-item="item" wx:key="d" class="{{['tab-item', 'data-v-89ca1f91', item.e && 'active']}}" bindtap="{{item.f}}"><image src="{{item.a}}" class="tab-icon data-v-89ca1f91"/><text class="{{['tab-text', 'data-v-89ca1f91', item.c && 'active']}}">{{item.b}}</text></view></view>
\ No newline at end of file
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.tab-bar.data-v-89ca1f91 {
position: fixed;
bottom: 0;
left: 0;
right: 0;
height: 100rpx;
background-color: #ffffff;
display: flex;
justify-content: space-around;
align-items: center;
box-shadow: 0 -2rpx 10rpx rgba(0, 0, 0, 0.05);
}
.tab-bar .tab-item.data-v-89ca1f91 {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
}
.tab-bar .tab-item .tab-icon.data-v-89ca1f91 {
width: 48rpx;
height: 48rpx;
margin-bottom: 4rpx;
}
.tab-bar .tab-item .tab-text.data-v-89ca1f91 {
font-size: 24rpx;
color: #666;
}
.tab-bar .tab-item .tab-text.active.data-v-89ca1f91 {
color: #007AFF;
}
\ No newline at end of file
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = {
__name: "Brand",
setup(__props) {
return (_ctx, _cache) => {
return {};
};
}
};
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-6f8ffbeb"]]);
wx.createComponent(Component);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/components/main/Brand.js.map
{
"navigationBarTitleText": "品牌",
"component": true,
"usingComponents": {}
}
\ No newline at end of file
<view class="brand-container data-v-6f8ffbeb"><view class="content data-v-6f8ffbeb"><text class="data-v-6f8ffbeb">品牌故事内容</text></view></view>
\ No newline at end of file
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.brand-container.data-v-6f8ffbeb {
padding: 20rpx;
}
.brand-container .content.data-v-6f8ffbeb {
padding-bottom: 100rpx;
}
\ No newline at end of file
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = {
__name: "Home",
setup(__props) {
return (_ctx, _cache) => {
return {};
};
}
};
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-e2af6427"]]);
wx.createComponent(Component);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/components/main/Home.js.map
{
"component": true,
"usingComponents": {}
}
\ No newline at end of file
<view class="home-container data-v-e2af6427"><view class="content data-v-e2af6427"><text class="data-v-e2af6427">首页内容</text></view></view>
\ No newline at end of file
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.home-container.data-v-e2af6427 {
padding: 20rpx;
}
.home-container .content.data-v-e2af6427 {
padding-bottom: 100rpx;
}
\ No newline at end of file
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = {
__name: "Integral",
setup(__props) {
return (_ctx, _cache) => {
return {};
};
}
};
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-3b5415d6"]]);
wx.createComponent(Component);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/components/main/Integral.js.map
{
"navigationBarTitleText": "积分",
"component": true,
"usingComponents": {}
}
\ No newline at end of file
<view class="integral-container data-v-3b5415d6"><view class="content data-v-3b5415d6"><text class="data-v-3b5415d6">积分服务内容</text></view></view>
\ No newline at end of file
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.integral-container.data-v-3b5415d6 {
padding: 20rpx;
}
.integral-container .content.data-v-3b5415d6 {
padding-bottom: 100rpx;
}
\ No newline at end of file
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = {
__name: "My",
setup(__props) {
return (_ctx, _cache) => {
return {};
};
}
};
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-fefbaedb"]]);
wx.createComponent(Component);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/components/main/My.js.map
{
"navigationBarTitleText": "我的",
"component": true,
"usingComponents": {}
}
\ No newline at end of file
<view class="my-container data-v-fefbaedb"><view class="content data-v-fefbaedb"><text class="data-v-fefbaedb">我的页面内容</text></view></view>
\ No newline at end of file
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.my-container.data-v-fefbaedb {
padding: 20rpx;
}
.my-container .content.data-v-fefbaedb {
padding-bottom: 100rpx;
}
\ No newline at end of file
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = {};
function _sfc_render(_ctx, _cache) {
return {};
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/brand/brand.js.map
<view></view>
\ No newline at end of file
"use strict";
const common_vendor = require("../../common/vendor.js");
const common_assets = require("../../common/assets.js");
const TabBar = () => "../../components/TabBar.js";
const Home = () => "../../components/Home.js";
const Brand = () => "../../components/Brand.js";
const Integral = () => "../../components/Integral.js";
const My = () => "../../components/My.js";
const _sfc_main = {
data() {
return {
title: "Hello"
curTabIndex: 0
};
},
onLoad() {
},
methods: {}
methods: {
handleTabClick({
index,
item
}) {
common_vendor.index.__f__("log", "at pages/index/index.vue:30", "Tab clicked:", index, item);
this.curTabIndex = index;
}
},
components: {
TabBar,
Home,
Brand,
Integral,
My
}
};
if (!Array) {
const _component_Home = common_vendor.resolveComponent("Home");
const _component_Brand = common_vendor.resolveComponent("Brand");
const _component_Integral = common_vendor.resolveComponent("Integral");
const _component_My = common_vendor.resolveComponent("My");
const _component_TabBar = common_vendor.resolveComponent("TabBar");
(_component_Home + _component_Brand + _component_Integral + _component_My + _component_TabBar)();
}
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
return {
a: common_assets._imports_0,
b: common_vendor.t($data.title)
};
return common_vendor.e({
a: $data.curTabIndex == 0
}, $data.curTabIndex == 0 ? {} : {}, {
b: $data.curTabIndex == 1
}, $data.curTabIndex == 1 ? {} : {}, {
c: $data.curTabIndex == 2
}, $data.curTabIndex == 2 ? {} : {}, {
d: $data.curTabIndex == 3
}, $data.curTabIndex == 3 ? {} : {}, {
e: common_vendor.o($options.handleTabClick)
});
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-1cf27b2a"]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/index/index.js.map
{
"navigationBarTitleText": "首页",
"usingComponents": {}
"usingComponents": {
"tab-bar": "../../components/TabBar",
"home": "../../components/Home",
"brand": "../../components/Brand",
"integral": "../../components/Integral",
"my": "../../components/My"
}
}
\ No newline at end of file
<view class="content"><image class="logo" src="{{a}}"></image><view class="text-area"><text class="title">{{b}}</text><textarea name="" id="" cols="30" rows="10"></textarea></view></view>
\ No newline at end of file
<view class="container data-v-1cf27b2a"><home wx:if="{{a}}" class="data-v-1cf27b2a" u-i="1cf27b2a-0" bind:__l="__l"></home><brand wx:if="{{b}}" class="data-v-1cf27b2a" u-i="1cf27b2a-1" bind:__l="__l"></brand><integral wx:if="{{c}}" class="data-v-1cf27b2a" u-i="1cf27b2a-2" bind:__l="__l"></integral><my wx:if="{{d}}" class="data-v-1cf27b2a" u-i="1cf27b2a-3" bind:__l="__l"></my><tab-bar class="data-v-1cf27b2a" bindtabClick="{{e}}" u-i="1cf27b2a-4" bind:__l="__l"/></view>
\ No newline at end of file
.content {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.container.data-v-1cf27b2a {
min-height: 100vh;
background-color: #f5f5f5;
}
.logo {
height: 200rpx;
width: 200rpx;
margin-top: 200rpx;
margin-left: auto;
margin-right: auto;
margin-bottom: 50rpx;
.container .content.data-v-1cf27b2a {
padding-bottom: 100rpx;
}
.text-area {
display: flex;
justify-content: center;
.content.data-v-1cf27b2a {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.title {
font-size: 36rpx;
color: #8f8f94;
}
.logo.data-v-1cf27b2a {
height: 200rpx;
width: 200rpx;
margin-top: 200rpx;
margin-left: auto;
margin-right: auto;
margin-bottom: 50rpx;
}
.text-area.data-v-1cf27b2a {
display: flex;
justify-content: center;
}
.title.data-v-1cf27b2a {
font-size: 36rpx;
color: #8f8f94;
}
\ No newline at end of file
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = {};
function _sfc_render(_ctx, _cache) {
return {};
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/integral/integral.js.map
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = {};
function _sfc_render(_ctx, _cache) {
return {};
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/my/my.js.map
<view></view>
\ No newline at end of file
......@@ -19,7 +19,7 @@
},
"compileType": "miniprogram",
"libVersion": "3.4.10",
"appid": "touristappid",
"appid": "wx1f110fcec1d6adc4",
"projectname": "20250528_FHQ1",
"condition": {},
"editorSetting": {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment