From 2d56f1560d9608dda2d48102d542fee248da830e Mon Sep 17 00:00:00 2001 From: AmyFoxFN Date: Tue, 13 Mar 2018 00:46:07 +0800 Subject: [PATCH] (doc): scroll precondition --- document/components/docs/zh-CN/scroll.md | 25 +++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/document/components/docs/zh-CN/scroll.md b/document/components/docs/zh-CN/scroll.md index dc5c9eca..3464fc7f 100644 --- a/document/components/docs/zh-CN/scroll.md +++ b/document/components/docs/zh-CN/scroll.md @@ -9,11 +9,26 @@ 通过设置 `data` 属性为一个数组,即可生成能够在容器内优雅滚动的列表。 ```html -
- -
+ ``` + ```stylus + .cube-scroll-wrapper + height: 100px + ``` + +- 滚动原理 + + 由于 better-scroll 的滚动原理为:在滚动方向上,第一个子元素的长度超过了容器的长度。 + + 那么对于 Scroll 组件,其实就是内容元素`.cube-scroll-content`在滚动方向上的长度必须大于容器元素 `.cube-scroll-wrapper`。根据滚动方向的不同,有以下两种情况: + + 1)纵向滚动:内容元素的高度必须大于容器元素。由于容器元素的高度默认会被子元素的高度撑开,所以为了满足我们的滚动前提,你需要给 Scroll 组件的 `.cube-scroll-wrapper`元素一个非弹性高度。 + + 2)横向滚动:内容元素的宽度必须大于容器元素。由于在默认情况下,子元素的宽度不会超过容器元素,所以需要给 Scroll 组件的 `.cube-scroll-content` 元素设置大于 `.cube-scroll-wrapper` 的宽度。 + + + - 配置 better-scroll 选项 通过 options 属性可以配置 better-scroll 的选项,包括滚动条、下拉刷新、上拉加载等,具体可查看 better-scroll 的[官方文档](https://ustbhuangyi.github.io/better-scroll/doc/zh-hans/options.html),这里仅对几个常用的配置项进行介绍说明。 @@ -83,6 +98,8 @@ } ``` + 需要注意的是,如果请求结果是没有新数据,也就是数据与之前一模一样没有变化,则必须使用 `this.$refs.scroll.forceUpdate()` 结束此次下拉刷新,这样,Scroll 组件才会开始监听下一次下拉刷新操作。 + 3)上拉加载 默认无上拉加载功能,可通过配置项`pullUpLoad`开启`pulling-up`事件派发和上拉动画,你可以监听`pulling-up`事件更新数据。 @@ -136,6 +153,8 @@ } ``` + 需要注意的是,如果请求结果是没有新数据,也就是数据与之前一模一样没有变化,则必须使用 `this.$refs.scroll.forceUpdate()` 结束此次上拉加载,这样,Scroll 组件才会开始监听下一次上拉加载操作。 + - 自定义下拉刷新和上拉加载动画 如果你不喜欢内置的下载刷新插槽和上拉加载,还可以用[作用域插槽](https://cn.vuejs.org/v2/guide/components.html#作用域插槽)做自定义动画。下面这个示例,就是用作用域插槽对下拉刷新做了自定义动画,而上拉加载则保留了缺省的内置动画。 -- GitLab