vue3-page-split-custom

0.0.2 • Public • Published

Vue Page Split Custom

基于 Vue3 的可拖拉缩放的分割面板--定制版

项目基于vue3-page-split二次开发,感谢开源作者,项目参考地址:https://www.npmjs.com/package/vue3-page-split

📦 安装

$ npm i vue3-page-split-custom -S

🔨 使用

在 Vue 项目中使用 PageSplit

<template>
  <PageSplit :distribute="0.3" :lineThickness="6" :isVertical="true" @resizeLineStartMove="onresizeLineStartMove"
    @resizeLineMove="onResizeLineMove" @resizeLineEndMove="onresizeLineEndMove">
    <template v-slot:first>
      <h1>A</h1>
    </template>
    <template v-slot:second>
      <h1>B</h1>
    </template>
  </PageSplit>
</template>

<script setup>
import PageSplit from "vue3-page-split-custom";
import "vue3-page-split-custom/dist/style.css";

function onresizeLineStartMove() {
  console.log("onresizeLineStartMove");
}
function onResizeLineMove(e) {
  console.log("onResizeLineMove :>> ", e);
}
function onresizeLineEndMove() {
  console.log("onresizeLineEndMove");
}
</script>

🔠 属性

属性名 类型 默认值 说明
distribute Number 0.5 面板比例,取值范围 0~1
isVertical Boolean true 切割模式(true:垂直切割,false:水平切割)
lineThickness Number 6 分割线的宽度
hasLineTip Boolean true 分割线中是否有三条杠
backgroundColor String "#a0cfff" 分割线的背景颜色
hoverColor String "#409eff" 分割线的鼠标hover后的颜色
hasBoxShadow Boolean true 分割线是否有box-shadow样式
firstMinValue Number 0 左组件/上组件的最小宽度/高度,必须>=0
secondMinValue Number 0 右组件/下组件的最小宽度/高度,必须>=0
isFirstComponentMasked Boolean false 左组件/上组件是否需要遮挡层
isSecondComponentMasked Boolean false 右组件/下组件是否需要遮挡层

备注:遮挡层用于捕获鼠标事件,主要在组件内包含iframe时使用,因为iframe会“吞噬”鼠标事件

👀 定制版备注:

1、面板比例可以取0或1值,解决原项目控制台的属性警告 2、分割线的宽度可以取值0,即不展示分割线。分割线宽度最小值为6

🎺 事件

本组件会触发3个事件:

事件名 说明 返回值
resizeLineStartMove 拖拽开始 -
resizeLineMove 拖拽中 event对象
resizeLineEndMove 拖拽结束 -

Package Sidebar

Install

npm i vue3-page-split-custom

Weekly Downloads

1

Version

0.0.2

License

MIT

Unpacked Size

31 kB

Total Files

7

Last publish

Collaborators

  • bj378032442