|
@@ -44,7 +44,11 @@ function getColorByIndex(index: number) {
|
|
|
return tabbarStore.curIdx === index ? activeColor : inactiveColor
|
|
return tabbarStore.curIdx === index ? activeColor : inactiveColor
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-function getImageByIndex(index: number, item: { iconActive: string, icon: string }) {
|
|
|
|
|
|
|
+function getImageByIndex(index: number, item: { iconActive?: string, icon: string }) {
|
|
|
|
|
+ if (!item.iconActive) {
|
|
|
|
|
+ console.warn('image 模式下,需要配置 iconActive,否则无法切换图片')
|
|
|
|
|
+ return item.icon
|
|
|
|
|
+ }
|
|
|
return tabbarStore.curIdx === index ? item.iconActive : item.icon
|
|
return tabbarStore.curIdx === index ? item.iconActive : item.icon
|
|
|
}
|
|
}
|
|
|
</script>
|
|
</script>
|
|
@@ -72,7 +76,7 @@ function getImageByIndex(index: number, item: { iconActive: string, icon: string
|
|
|
<template v-if="item.iconType === 'unocss' || item.iconType === 'iconfont'">
|
|
<template v-if="item.iconType === 'unocss' || item.iconType === 'iconfont'">
|
|
|
<view :class="item.icon" class="text-20px" />
|
|
<view :class="item.icon" class="text-20px" />
|
|
|
</template>
|
|
</template>
|
|
|
- <template v-if="item.iconType === 'local'">
|
|
|
|
|
|
|
+ <template v-if="item.iconType === 'image'">
|
|
|
<image :src="getImageByIndex(index, item)" mode="scaleToFill" class="h-20px w-20px" />
|
|
<image :src="getImageByIndex(index, item)" mode="scaleToFill" class="h-20px w-20px" />
|
|
|
</template>
|
|
</template>
|
|
|
<view class="mt-2px text-12px">
|
|
<view class="mt-2px text-12px">
|