uni-app ios下 nvue的refresh组件无法正常刷新且不触发@refresh事件 安卓正常 已上传示例文件
uni-app ios下 nvue的refresh组件无法正常刷新且不触发@refresh事件 安卓正常 已上传示例文件
基本信息
信息类别 | 内容 |
---|---|
产品分类 | uniapp/App |
PC开发环境操作系统 | Windows |
PC开发环境操作系统版本号 | win10 |
HBuilderX类型 | 正式 |
HBuilderX版本号 | 3.1.2 |
手机系统 | iOS |
手机系统版本号 | IOS 14 |
手机厂商 | 苹果 |
手机机型 | Iphone11 |
页面类型 | nvue |
打包方式 | 云端 |
项目创建方式 | HBuilderX |
示例代码:
<template>
<list>
<!-- 上拉刷新 -->
<refresh [@refresh](/user/refresh)="onRefresh" :display="refreshIfShow ? 'show' : 'hide'">
<view class="refresh-box"><text class="refresh-text">上拉刷新区域(一秒后我会成功)</text></view>
</refresh>
<cell v-for="(value,key) of 50" :key="key">
<view class="item"><text>{{value}}</text></view>
</cell>
</list>
</template>
<script>
export default {
data() {
return {
refreshIfShow: true
}
},
onLoad() {
},
methods: {
// refresh组件的完成刷新事件
onRefresh(){
this.refreshIfShow = true
//一秒后,输出完成,并且隐藏Refresh组件
setTimeout(() => {
uni.showToast({ title: '刷新成功!', duration: 700});
this.refreshIfShow = false
}, 1000)
}
}
}
</script>
<style>
.item{
height: 50px;
width: 750rpx;
border-width: 1px;
background-color: #C0C0C0;
}
.refresh-box{
background-color: #F0AD4E;
width: 750rpx;
height: 70px;
}
.refresh-text{
line-height: 90px;
text-align: center;
}
</style>
更多关于uni-app ios下 nvue的refresh组件无法正常刷新且不触发@refresh事件 安卓正常 已上传示例文件的实战教程也可以访问 https://www.itying.com/category-93-b0.html
refreshIfShow 初始状态应该为 false
更多关于uni-app ios下 nvue的refresh组件无法正常刷新且不触发@refresh事件 安卓正常 已上传示例文件的实战教程也可以访问 https://www.itying.com/category-93-b0.html
擦,居然才六个浏览吗。
自顶
自顶
解决了吗?我测了下@refresh在ios还是没触发
回复 zwzz:display属性的初始值,必须设置为false才会生效。而不是show和hide
解决了吗?
解决了,display属性的初始值,必须设置为false才会生效。而不是show和hide
我的refresh组件在ios中,布局错乱是怎么回事,直接在屏幕中心显示,滚动时还乱跳,安卓一点问题都没有,有大哥知道吗?在线等,急急急
:display=“refreshing ? refreshing : ‘hide’” refreshing默认false
根据您提供的代码和问题描述,iOS下nvue的refresh组件无法正常刷新且不触发@refresh事件的问题,可以尝试以下解决方案:
-
检查iOS平台特有的兼容性问题,nvue在iOS和Android上的实现确实存在一些差异
-
建议修改refresh组件的使用方式,尝试以下调整:
<refresh [@refresh](/user/refresh)="onRefresh" :display="refreshIfShow ? 'show' : 'hide'">
<text class="refresh-text">上拉刷新区域(一秒后我会成功)</text>
</refresh>