1.0.0-alpha.3 • Published 8 months ago

vue3-resizable v1.0.0-alpha.3

Weekly downloads
-
License
MIT
Repository
-
Last release
8 months ago

🐳 Vue 3 Composition API

🔥 Written in TypeScript

English · 简体中文 · Demo/Document

Installation

Install using npm:

npm install vue3-resizable

Install using pnpm:

pnpm install vue3-resizable

Or using yarn:

yarn add vue3-resizable

Usage

First, ensure that you import the component in your Vue project:

Global Import

import { createApp } from "vue"
import App from "./App.vue"

import LResize from "vue3-resizable"
import "vue3-resizable/dist/index.css"

const app = createApp(App)
app.use(LResize)
app.mount("#app")

Local Import

import { LResize } from "vue3-resizable"
import "vue3-resizable/dist/index.css"

Then, use it in your component:

<template>
  <LResize
    :minWidth="100"
    :minHeight="100"
    :maxWidth="300"
    :maxHeight="300"
    :initialWidth="150"
    :initialHeight="150"
    :initialTop="50"
    :initialLeft="50"
    :cssUnit="'px'"
    :showDimension="true"
    :showPosition="true"
  >
    <!-- You can insert any custom content here -->
    <div>Resizable content container</div>
  </LResize>
</template>

Props

Prop类型默认值描述
minWidthnumber30Minimum width limit
minHeightnumber30Minimum height limit
maxWidthnumbernoneMaximum width limit
maxHeightnumbernoneMaximum height limit
initialWidthnumber200Initial width
initialHeightnumber200Initial height
initialTopnumber100Initial top offset
initialLeftnumber100Initial left offset
cssUnit'px' \| 'rem' \| string'px'Size unit
showDimensionbooleanfalseShow size info
showPositionbooleanfalseShow position info
styleCSSProperties{}Container style
handleStyleCSSProperties{}Drag handle style

Slots

Slot NameDescription
defaultInsert custom content

Events

Event NameDescriptionParameters
boxUpdatedTriggered when the box size or position is updatedBoxState

BoxState Parameters

Parameter NameTypeDescription
widthnumberWidth of the box
heightnumberHeight of the box
topnumberTop position of the box
leftnumberLeft position of the box
zIndexnumberz-index value of the box

Exposes

Method NameDescriptionParameters
updateBoxStyleUpdate box style() => void
startDragStart dragging() => void
endDragEnd dragging() => void
startResizeStart resizing() => void
endResizeEnd resizing() => void

Developer Guide

To contribute to the development of this component, you can clone the source code repository and install all dependencies:

git clone https://github.com/LostElkByte/vue3-resizable.git
cd vue3-resizable
npm install

Contribution

Contributions are welcome through Issues or Pull Requests. Please ensure your code follows the project's style and quality standards.

License

This project is licensed under the MIT License. For more information, please see the LICENSE file.