<view class="page-root">
<list class="list">
<cell v-for="item in arr" :key="item.id">
<view class="item">
<text>{{ item.id }}渐变+设置圆角时会闪退!!!!</text>
<template>
<image
style="width: 300px;height: 50px;"
src="https://web-assets.dcloud.net.cn/unidoc/zh/uni-app.png"
mode="scaleToFill"
/>
<image
style="width: 300px;height: 50px;"
src="https://web-assets.dcloud.net.cn/unidoc/zh/uni-app.png"
mode="scaleToFill"
/>
<text>内容越多越容易触发闪退!!!!</text>
<text>uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。DCloud公司拥有900万开发者、数百万应用、12亿手机端月活用户、数千款uni-app插件、70+微信/qq群。</text>
</template>
<view class="bg">
border-radius
</view>
</view>
</cell>
</list>
</view>
</template>
<script>
export default {
data() {
return {
message: '',
arr: []
}
},
onLoad() {
this.init()
const arr2 = []
let i = 0
while (i < 100) {
arr2.push({
id: 'radius' + (i + 1)
})
i++
}
this.arr = arr2
},
methods: {
init() {
//
}
}
}
</script>
<style scoped lang='scss'>
.page-root {
margin-top: 100rpx;
}
.list {
display: flex;
width: 750rpx;
flex-direction: column;
padding: 30rpx;
}
.item {
width: 690rpx;
display: flex;
height: 300rpx;
flex-direction: column;
border: 1px solid #e0e0e0;
margin-bottom: 30rpx;
}
.bg {
width: 690rpx;
height: 38rpx;
/* 注释下面两行就不会了 */
background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .8));
border-radius: 0 0 12rpx 12rpx;
}
</style>
- 发布:2023-03-01 17:35
- 更新:2023-03-16 22:30
- 阅读:809
产品分类: uniapp/App
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: 11.6.8 (20G730)
HBuilderX类型: 正式
HBuilderX版本号: 3.7.3
手机系统: iOS
手机系统版本号: iOS 16
手机厂商: 苹果
手机机型: iphone xr
页面类型: nvue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
<view class="page-root">
<list class="list">
<cell v-for="item in arr" :key="item.id">
<view class="item">
<text>{{ item.id }}渐变+设置圆角时会闪退!!!!</text>
<template>
<image
style="width: 300px;height: 50px;"
src="https://web-assets.dcloud.net.cn/unidoc/zh/uni-app.png"
mode="scaleToFill"
/>
<image
style="width: 300px;height: 50px;"
src="https://web-assets.dcloud.net.cn/unidoc/zh/uni-app.png"
mode="scaleToFill"
/>
<text>内容越多越容易触发闪退!!!!</text>
<text>uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。DCloud公司拥有900万开发者、数百万应用、12亿手机端月活用户、数千款uni-app插件、70+微信/qq群。</text>
</template>
<view class="bg">
border-radius
</view>
</view>
</cell>
</list>
</view>
</template>
<script>
export default {
data() {
return {
message: '',
arr: []
}
},
onLoad() {
this.init()
const arr2 = []
let i = 0
while (i < 100) {
arr2.push({
id: 'radius' + (i + 1)
})
i++
}
this.arr = arr2
},
methods: {
init() {
//
}
}
}
</script>
<style scoped lang='scss'>
.page-root {
margin-top: 100rpx;
}
.list {
display: flex;
width: 750rpx;
flex-direction: column;
padding: 30rpx;
}
.item {
width: 690rpx;
display: flex;
height: 300rpx;
flex-direction: column;
border: 1px solid #e0e0e0;
margin-bottom: 30rpx;
}
.bg {
width: 690rpx;
height: 38rpx;
/* 注释下面两行就不会了闪退 */
background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .8));
border-radius: 0 0 12rpx 12rpx;
}
</style>
<view class="page-root">
<list class="list">
<cell v-for="item in arr" :key="item.id">
<view class="item">
<text>{{ item.id }}渐变+设置圆角时会闪退!!!!</text>
<template>
<image
style="width: 300px;height: 50px;"
src="https://web-assets.dcloud.net.cn/unidoc/zh/uni-app.png"
mode="scaleToFill"
/>
<image
style="width: 300px;height: 50px;"
src="https://web-assets.dcloud.net.cn/unidoc/zh/uni-app.png"
mode="scaleToFill"
/>
<text>内容越多越容易触发闪退!!!!</text>
<text>uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。DCloud公司拥有900万开发者、数百万应用、12亿手机端月活用户、数千款uni-app插件、70+微信/qq群。</text>
</template>
<view class="bg">
border-radius
</view>
</view>
</cell>
</list>
</view>
</template>
<script>
export default {
data() {
return {
message: '',
arr: []
}
},
onLoad() {
this.init()
const arr2 = []
let i = 0
while (i < 100) {
arr2.push({
id: 'radius' + (i + 1)
})
i++
}
this.arr = arr2
},
methods: {
init() {
//
}
}
}
</script>
<style scoped lang='scss'>
.page-root {
margin-top: 100rpx;
}
.list {
display: flex;
width: 750rpx;
flex-direction: column;
padding: 30rpx;
}
.item {
width: 690rpx;
display: flex;
height: 300rpx;
flex-direction: column;
border: 1px solid #e0e0e0;
margin-bottom: 30rpx;
}
.bg {
width: 690rpx;
height: 38rpx;
/* 注释下面两行就不会了闪退 */
background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .8));
border-radius: 0 0 12rpx 12rpx;
}
</style>
预期结果:
不会闪退
不会闪退
实际结果:
快速上下滑动时,会闪退
快速上下滑动时,会闪退
bug描述:
iOS 真机,测试了 iPhone xr 和 iPhone 11 ,list 组件的 cell 里面有渐变 + 圆角时,快速上下滑动会闪退或卡死;
运行 demo 到 iOS 真机,最好是 iPhone xr 机型,测试 iPhone 13 pro max 很难触发闪退,需要拖住右边的滚动条更快速滑动才会。
复现 demo 已上传到附件;