uni-app map配置circles 其中fillColor 透明度#5DB9F91A 不生效

uni-app map配置circles 其中fillColor 透明度#5DB9F91A 不生效

开发环境 版本号 项目创建方式
Windows Windows 11 HBuilderX
HBuilderX 4.76
Chrome 139.0.7258.155

示例代码:

<map  
id="my_map"  
min-scale="4"
max-scale="18"
scale="14"
circles="[{
                latitude: this.latitude,
                longitude: this.longitude,
                radius: 1200,
                color:'#5DB9F9FF',
                strokeWidth:1,
                fillColor: '#5DB9F91A'}]"  
latitude="latitude"
longitude="longitude"
     style="width:100%;"  
style="{'height':mapHeight}"
show-location="true"
markers="covers"
    @markertap="markertapEvent">
        <cover-view class="daycare-box" v-if="Object.keys(currentDaycare).length">
            <cover-view class="top-box">
                <cover-view class="daycare-name">{{currentDaycare.name}}</cover-view>
                <cover-view class="detail-btn" @click="toDetail">查看详情</cover-view>
            </cover-view>
            <cover-view class="bottom-box">
                <cover-view class="distance-text">{{currentDaycare.distanceStr || '-'}}</cover-view>
                <cover-view class="line">|</cover-view>
                <cover-view class="address-text">{{currentDaycare.address}}</cover-view>
            </cover-view>
        </cover-view>
</map>

操作步骤:

直接初始化即可复现

预期结果:

透明度生效

实际结果:

16进制颜色值透明度不生效

bug描述:

uiapp map配置circles 其中fillColor 透明度#5DB9F91A 不生效


更多关于uni-app map配置circles 其中fillColor 透明度#5DB9F91A 不生效的实战教程也可以访问 https://www.itying.com/category-93-b0.html

35 回复

vue的版本是多少?地图厂商是哪个?

更多关于uni-app map配置circles 其中fillColor 透明度#5DB9F91A 不生效的实战教程也可以访问 https://www.itying.com/category-93-b0.html


vue3 用的高德地图

这个要怎么改?啥时候可以用?

回复 cxm151254182: 发下完整的demo

回复 DCloud_UNI_JBB: 现在用我下面的方式本地是可以了,但是测试环境总不能每次都改那个文件吧

回复 DCloud_UNI_JBB: 还有啥其他的解决办法吗?

希望可以尽快回复,我这边很着急

<map
id=“my_map”
:min-scale=“4”
:max-scale=“18”
:scale=“14”
:circles="[{
latitude: this.latitude,
longitude: this.longitude,
radius: 1200,
color:’#5DB9F9FF’,
strokeWidth:1,
fillColor: ‘#5DB9F91A’}]"
:latitude=“latitude”
:longitude=“longitude”
style=“width:100%;”
:style="{‘height’:mapHeight}"
:show-location=“true”
:markers=“covers”
@markertap=“markertapEvent”>
<cover-view class="daycare-box" v-if="Object.keys(currentDaycare).length">
<cover-view class="top-box">
<cover-view class="daycare-name">{{currentDaycare.name}}</cover-view>
<cover-view class=“detail-btn” @click=“toDetail”>查看详情</cover-view>
</cover-view>
<cover-view class="bottom-box">
<cover-view class="distance-text">{{currentDaycare.distanceStr || ‘-’}}</cover-view>
<cover-view class="line">|</cover-view>
<cover-view class="address-text">{{currentDaycare.address}}</cover-view>
</cover-view>
</cover-view>
</map>

这个是我这边使用地图得完整代码

回复 cxm151254182: 你说你替换了那个vue3对应的文件就行了?

回复 DCloud_UNI_JBB: 是的

4.76 版本的 hx 我测试并没有复现 fillColor 不生效的问题

左边是我使用上方代码弄得,右边是我们设计稿

填充色设置得这个fillColor:#5DB9F91A

替换文件就可以显示右边设计稿的透明度

看起来没啥问题,跟你的设计稿颜色一致

但是我的代码就是上面的代码,然后我这边显示的是这个样子的

是我哪里配置的有问题吗?

回复 cxm151254182: 你用hello uniapp试试,我是改的hello uniapp的map组件示例

这是什么意思?新建的hello uniapp

没啥影响,不用管

回复 DCloud_UNI_JBB:我这边显示hello uniapp 是可以的,但是我自己的项目就是不行,是不是有啥配置影响

回复 cxm151254182: 你把你在hello uniapp里map的代码贴到你的项目里面看看能不能行

不行,跟自己的一样的,这是我的demo,复制的也是hello uniapp 的,一样的效果

问题复现了吗?这个问题啥时候能解决,很急!!!

回复 cxm151254182: 你给的demo web端跑不起来

回复 DCloud_UNI_JBB: 需要初始化,安装依赖包,如果有接口报304错误的话,就注释掉 proxy试试,我这边是可以跑起来的

是不是这个版本问题,我之前直接从网上复制的,是的话,要改成多少呢?,上面替换文件也是换的这个对应依赖下面的文件,换完之后就好了

uniapp不会维护以往版本的依赖

跑不起来,发个能运行的复现demo

如果是安装依赖时候报错,我这边用的是node 14.21.3版本,安装完之后, HbuildX=>运行=》H5k开发环境,即可跑起来

回复 cxm151254182: 很明显是运行报错

回复 DCloud_UNI_JBB: 可是我这边能跑起来,不知道你那边是怎末回事 https://bbs.itying.com/topic/67e1d85d687c4e0048a85826这个文档看一下试一下

在 uni-app 的 map 组件中,circles 的 fillColor 属性对 ARGB 格式的透明度支持在不同平台表现不一致。你使用的 #5DB9F91A 格式(带透明度)在某些端可能无法正确解析。

解决方案:

  1. 使用 rgba() 格式:将颜色值改为 rgba(93, 185, 249, 0.1),其中 0.1 对应你原透明度 1A(约10%)
  2. 检查平台兼容性:iOS 对 ARGB 支持较好,Android 端可能需要使用 rgba 格式

修改后的代码:

fillColor: 'rgba(93, 185, 249, 0.1)'
回到顶部