Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-zh
提交
3098782e
unidocs-zh
项目概览
DCloud
/
unidocs-zh
通知
3178
Star
105
Fork
805
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
93
列表
看板
标记
里程碑
合并请求
68
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
93
Issue
93
列表
看板
标记
里程碑
合并请求
68
合并请求
68
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
3098782e
编写于
9月 27, 2023
作者:
shutao-dc
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update scroll-view.md
上级
7a6b5907
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
43 addition
and
5 deletion
+43
-5
docs/uni-app-x/component/scroll-view.md
docs/uni-app-x/component/scroll-view.md
+43
-5
未找到文件。
docs/uni-app-x/component/scroll-view.md
浏览文件 @
3098782e
...
...
@@ -7,16 +7,16 @@
<!-- UTSCOMJSON.scroll-view.event -->
<!-- UTSCOMJSON.scroll-view.example -->
### 自定义下拉刷新样式
1.
设置
`refresher-default-style`
属性为 none 不使用默认样式
2.
自定义下拉刷新元素必须要声明为 slot="refresher"
3.
通过组件提供的refresherpulling、refresherrefresh、refresherrestore、refresherabort下拉刷新事件调整自定义下拉刷新元素!实现预期效果
**注意:**
目前自定义下拉刷新元素不支持放在scroll-view的首个子元素位置上。可能无法正常显示
**注意:**
目前自定义下拉刷新元素不支持放在scroll-view的首个子元素位置上。可能无法正常显示
```
vue
```
vue
<scroll-view
refresher-default-style=
"none"
:refresher-enabled=
"true"
:refresher-triggered=
"refresherTriggered"
@
refresherpulling=
"onRefresherpulling"
@
refresherrefresh=
"onRefresherrefresh"
@
refresherrestore=
"onRefresherrestore"
style=
"flex:1"
>
...
...
@@ -33,7 +33,45 @@
</scroll-view>
```
**具体代码请参考:**
[
自定义下拉刷新样式示例
](
https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/scroll-view/scroll-view-custom-refresher-props.uvue
)
**具体代码请参考:**
[
自定义下拉刷新样式示例
](
https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/scroll-view/scroll-view-custom-refresher-props.uvue
)
### nested-scroll嵌套滚动协商
+
通过设置
`custom-nested-scroll = true`
,开启与父组件实现嵌套滚动协商。仅list-view、scroll-view组件支持与父组件嵌套滚动协商!
```
html
<scroll-view
style=
"height: 100%;"
scroll-y=
"true"
rebound =
"false"
@
startnestedscroll=
"onStartNestedScroll"
@
nestedprescroll=
"onNestedPreScroll"
@
stopnestedscroll=
"onStopNestedScroll"
>
...
<view
style=
"height: 100px;"
>
停靠视图
</view>
<list-view
class=
"child-scroll"
scroll-y=
"true"
custom-nested-scroll=
"true"
>
...
</list-view>
</scroll-view>
```
+
子组件准备滚动时会触发父组件的
`startnestedscroll`
事件。父组件响应
`startnestedscroll`
事件return ture则表示与子组件建立嵌套滚动协商。
```
html
onStartNestedScroll(event: StartNestedScrollEvent): Boolean {
//开启与子组件建立嵌套滚动协商
return true
}
```
+
当建立嵌套滚动协商后!父组件会持续收到
`nestedprescroll`
事件,事件中会返回NestedPreScrollEvent子组件将要滚动的数据。
+
执行NestedPreScrollEvent.consumed(x,y)函数告知子组件本次
`nestedprescroll`
事件deltaX、deltaY各消耗多少。子组件将执行差值后的deltaX、deltaY滚动距离。
```
html
onNestedPreScroll(event: NestedPreScrollEvent) {
var deltaY = event.deltaY
var deltaX = event.deltaX
...
if() {
//告知子组件deltaX、deltaY各消耗多少
event.consumed(x, y)
}
}
```
+
滚动行为停止后会触发
`stopnestedscroll`
事件
+
仅Android平台支持嵌套滚动协商
**具体代码请参考:**
[
nested-scroll嵌套滚动示例
](
https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/template/long-list/long-list.uvue
)
<!-- UTSCOMJSON.scroll-view.compatibility -->
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录