1***@qq.com
1***@qq.com
  • 发布:2025-04-09 17:50
  • 更新:2025-04-10 15:26
  • 阅读:139

button的自定义样式失效

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win10

HBuilderX类型: 正式

HBuilderX版本号: 4.57

手机系统: Android

手机系统版本号: Android 9.0

手机厂商: 模拟器

手机机型: 安卓

页面类型: nvue

vue版本: vue3

打包方式: 离线

项目创建方式: HBuilderX

示例代码:

roomCard.nvue代码如下

<template>  
    <view class="price-container">  
        <button class="booking-button"><text class="bt-text">立即预订</text></button>  
    </view>  
</template>  

<script>  
    export default {  
        name: 'roomCard',  
        data() {  
            return {  

            }  
        },  
        methods: {  

        }  
    }  
</script>  

<style>  
        /*在另一个nvue页面中引用此组件时,这里设置的背景色在app下明显失效*/  
    .booking-button {  
        height: 68rpx;  
        background-color: #007aff;  
    }  

    .booking-button .bt-text {  
        color: #ffffff;  
        font-size: 28rpx;  
    }  
</style>

booking.nvue代码如下:


<template>  
    <view class="page-container">  
        <room-card></room-card>  
    </view>  
</template>  

<script>  
    import roomCard from './components/roomCard.nvue'  

    export default {  
        data() {  
            return {  
            }  
        },  
        components: {  
            roomCard  
        }  
    }  
</script>

操作步骤:

1、新建一个nvue组件,组件中使用button内置组件,在button上设置class自定义样式
2、在另一个nvue页面中引用第一步创建的nvue组件,运行为微信小程序是正常的,但运行到手机模拟器时,button上设置的自定义样式失效

预期结果:

background-color: #007aff;应该让button显示为蓝色

实际结果:

button没有背景色

bug描述:

button在子nvue组件中,主nvue页面引用子nvue组件时自定义button样式失效,但如果将整个子nvue组件提取到主nvue页面,自定义的button的样式就恢复了。

2025-04-09 17:50 负责人:无 分享
已邀请:
DCloud_UNI_JBB

DCloud_UNI_JBB

可以发个复现代码嘛?

1***@qq.com

1***@qq.com (作者)

就是我在booking.nvue(booking.nvue是tabbar页面)里面引用了roomCard.nvue,而roomCard.nvue中又使用了button这个内置组件,button上有一个class写了一些自定义样式,在手机app模拟器(雷电模拟器)中作用于button的class失效了,但是在小程序中是正常的。

DCloud_UNI_JBB

DCloud_UNI_JBB

可以先用view代替button解决一下。 nvue 不再迭代,推荐使用 uni-app x

要回复问题请先登录注册