uni-app 3.1.14 alpha iOS云打包存在样式问题
uni-app 3.1.14 alpha iOS云打包存在样式问题
| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| Windows | Windows 10 | HBuilderX |
产品分类:uniapp/App
PC开发环境操作系统:Windows
HBuilderX类型:Alpha
HBuilderX版本号:3.1.14
手机系统:iOS
手机系统版本号:IOS 14
手机厂商:苹果
手机机型:iPhone 7 Plus
页面类型:vue
打包方式:云端
示例代码:
<div class="avatar-wrap" @click.stop="$emit('expDetail')">
<image
src="info.author.avatar.url"
class="avatar"
class="info.author.labels ? 'avatar-labels' : ''"
></image>
<text v-if="info.author.labels" class="labels">{{ info.author.labels[0] }}</text>
</div>
/* 头像 */
.avatar {
width: 80rpx;
height: 80rpx;
border-radius: 50%
}
.avatar-labels {
border: 3px solid $app-blue-6
}
操作步骤:
<div class="avatar-wrap" @click.stop="$emit('expDetail')">
<image
src="info.author.avatar.url"
class="avatar"
class="info.author.labels ? 'avatar-labels' : ''"
></image>
<text v-if="info.author.labels" class="labels">{{ info.author.labels[0] }}</text>
</div>
/* 头像 */
.avatar {
width: 80rpx;
height: 80rpx;
border-radius: 50%
}
.avatar-labels {
border: 3px solid $app-blue-6
}
预期结果:
<div class="avatar-wrap" @click.stop="$emit('expDetail')">
<image
src="info.author.avatar.url"
class="avatar"
class="info.author.labels ? 'avatar-labels' : ''"
></image>
<text v-if="info.author.labels" class="labels">{{ info.author.labels[0] }}</text>
</div>
/* 头像 */
.avatar {
width: 80rpx;
height: 80rpx;
border-radius: 50%
}
.avatar-labels {
border: 3px solid $app-blue-6
}
实际结果:
<div class="avatar-wrap" @click.stop="$emit('expDetail')">
<image
src="info.author.avatar.url"
class="avatar"
class="info.author.labels ? 'avatar-labels' : ''"
></image>
<text v-if="info.author.labels" class="labels">{{ info.author.labels[0] }}</text>
</div>
/* 头像 */
.avatar {
width: 80rpx;
height: 80rpx;
border-radius: 50%
}
.avatar-labels {
border: 3px solid $app-blue-6
}
bug描述:
本地调式没问题,云打包后圆形头像的宽高变大


更多关于uni-app 3.1.14 alpha iOS云打包存在样式问题的实战教程也可以访问 https://www.itying.com/category-93-b0.html
提供一下 uniapp id
更多关于uni-app 3.1.14 alpha iOS云打包存在样式问题的实战教程也可以访问 https://www.itying.com/category-93-b0.html
App id:UNI7C247C1
问题确认:部分情况下 rpx 计算错误,已加分,后续修复
临时解决方案:
修改 HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/app-vue-style-loader/lib/addStylesClient.js、 HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/h5-vue-style-loader/lib/addStylesClient.js 文件中的 /{[\s\S]+?}|@media.+{/g 为 /{[\s\S]+?}|@media.+?{/g
收到。感谢开发者回复
从您描述的问题来看,这是一个在uni-app 3.1.14 alpha版本iOS云打包后出现的样式兼容性问题。主要问题在于云端打包后圆形头像的宽高尺寸异常增大,而本地调试时显示正常。
分析您的代码,有几个可能的原因:
-
CSS单位兼容性问题:在iOS云端打包环境中,
rpx单位的计算可能出现了偏差。建议尝试将80rpx改为px单位测试,比如40px(基于750设计稿的换算)。 -
image组件样式冲突:您的image组件上重复使用了
class属性,这在Vue中是无效的。正确的写法应该是:
<image
src="info.author.avatar.url"
:class="['avatar', info.author.labels ? 'avatar-labels' : '']"
></image>

