vue监听父组件滚动条滚动_适用于PC的Vue.js滚动条组件

vue监听父组件滚动条滚动

实时滚动条 (vue-scrollbar-live)

pkg.module supported, which means that you can apply tree-shaking in you project

支持pkg.module,这意味着您可以在项目中应用摇树

A vue scrollbar component, support SSR.

Vue滚动条组件,支持SSR。

运行示例 (Run Example)

Your can see the usage by run the example of the module, here is the step:

您可以通过运行模块示例来查看用法,这是步骤:

  1. Clone the library git clone https://github.com/livelybone/vue-scrollbar-live.git

    克隆库git clone https://github.com/livelybone/vue-scrollbar-live.git

  2. Go to the directory cd vue-scrollbar-live

    进入目录cd vue-scrollbar-live

  3. Install npm dependencies npm i(use taobao registry: npm i --registry=http://registry.npm.taobao.org)

    安装npm依赖项npm i (使用淘宝注册中心: npm i --registry=http://registry.npm.taobao.org )

  4. Open service npm run dev

    打开服务npm run dev

  5. See the example(usually is http://127.0.0.1/examples/test.html) in your browser

    在浏览器中查看示例(通常为http://127.0.0.1/examples/test.html )

安装 (Installation)

npm i -S vue-scrollbar-live

全球名称 (Global name)

VueScrollbar

VueScrollbar

用法 (Usage)

import VueScrollbar from 'vue-scrollbar-live';

// 引入css
import 'vue-scrollbar-live/lib/css/index.css';

// Global register
Vue.component('scrollbar', VueScrollbar);

// Local register
new Vue({
  components:{VueScrollbar}
})

when you want to set this module as external while you are developing another module, you should import it like this:

当您要在开发另一个模块时将此模块设置为外部模块时,应按以下方式导入它:

import * as VueScrollbar  from 'vue-scrollbar-live'

// then use it by need

Use in html, see what your can use in CDN: unpkg

在html中使用,查看可以在CDN中使用的内容:unpkg

<-- use what you want -->
<script src="https://unpkg.com/vue-scrollbar-live/lib/umd/<--module-->.js"></script>

接口 (Interface)

See in index.d.ts

参见index.d.ts

道具 (Props)

NameTypeDefaultValueDescription
isMobileBooleanfalseMark the device that component be used
maxHeight[String, Number]noneUsed to set style max-height of the wrap .scrollbar-wrap.$/
scrollTo[Number, Object]0Used to set scroll y of the content wrap .scrollbar-content. value: 0 ~ 1$/
marginToWrapNumber0Used to set scroll y of the content wrap .scrollbar-content. value: 0 ~ 1$/
名称 类型 默认值 描述
isMobile Boolean false 标记要使用组件的设备
maxHeight [String, Number] 没有 用于设置包装的最大高度.scrollbar-wrap 。$ /
scrollTo [Number, Object] 0 用于设置内容包装.scrollbar-content滚动y。 价值: 0 ~ 1 $ /
marginToWrap Number 0 用于设置内容包装.scrollbar-content滚动y。 价值: 0 ~ 1 $ /

大事记 (Events)

NameEmittedDataDescription
wrapClickeventclick event of the wrap
reachBottomnoneTriggered when the scrollbar reach the bottom
reachTopnoneTriggered when the scrollbar reach the top
reachLeftnoneTriggered when the scrollbar reach the left
reachRightnoneTriggered when the scrollbar reach the right
startDragObjectDrag start event of the scrollbar
endDragObjectDrag end event of the scrollbar
名称 发射数据 描述
wrapClick event 包装的click事件
reachBottom 没有 滚动条到达底部时触发
reachTop 没有 滚动条到达顶部时触发
reachLeft 没有 滚动条到达左侧时触发
reachRight 没有 滚动条到达右侧时触发
startDrag Object 滚动条的拖动开始事件
endDrag Object 滚动条的拖动结束事件

样式 (style)

Since 5.0.0, you don't need to import the css file in your project

从5.0.0开始,您无需在项目中导入css文件

For rewrite style, you can copy the index.scss or index.css file, rewrite it use !important(this is necessary), and the import the file in your project

对于重写样式,可以复制index.scssindex.css文件,使用!important重写它(这是必需的),然后将文件导入项目中

申请注意 (Attention for application)

If you put the component at a div that is display:none, the component may be will not work

如果将组件放置在display:none的div上,则组件可能无法工作

There are two solutions:

有两种解决方案:

  1. Set opacity: 0; pointer-events: none; instead of display: none

    设置opacity: 0; pointer-events: none; opacity: 0; pointer-events: none; 而不是display: none

  2. Use v-if instead of set display: none

    使用v-if代替设置display: none

质量检查 (QA)

  1. Error Error: spawn node-sass ENOENT

    错误Error: spawn node-sass ENOENT

You may need install node-sass globally, npm i -g node-sass

您可能需要全局安装node-sass, npm i -g node-sass

翻译自: https://vuejsexamples.com/a-vuejs-scrollbar-component-for-pc/

vue监听父组件滚动条滚动

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值