# vue-slideout
**Repository Path**: hyjiacan/vue-slideout
## Basic Information
- **Project Name**: vue-slideout
- **Description**: 一个 Vue2/3 的侧滑组件
- **Primary Language**: JavaScript
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 49
- **Forks**: 16
- **Created**: 2019-03-03
- **Last Updated**: 2024-06-26
## Categories & Tags
**Categories**: vue-extensions
**Tags**: None
## README
# Slideout
[](https://github.com/hyjiacan/vue-slideout/blob/master/LICENSE)
[](https://www.travis-ci.org/hyjiacan/vue-slideout)
[](https://www.npmjs.com/package/@hyjiacan/vue-slideout)

[](https://npmcharts.com/compare/@hyjiacan/vue-slideout?minimal=true)
[](https://coveralls.io/github/hyjiacan/vue-slideout?branch=master)
[](https://www.jsdelivr.com/package/npm/@hyjiacan/vue-slideout)
一个 Vue3 的侧滑组件
## 依赖
- Vue.js 3.x
- Less
## 安装
### Node 环境 (commonjs)
```bash
npm i @hyjiacan/vue-slideout@3
```
或
```bash
yarn add @hyjiacan/vue-slideout@3
```
你若想要兼容 Vue.js 2.x,那么使用版本 `@hyjiacan/vue-slideout@2`。
可以通过以下方式获取最新代码:
```bash
git clone https://github.com/hyjiacan/vue-slideout.git
```
或 [下载归档](https://github.com/hyjiacan/vue-slideout/archive/master.zip)
### 浏览器环境 (umd)
与 node 环境一样, 此时会暴露一个全局 `Slideout`。
使用最新版本
```html
```
使用指定版本
```html
```
> **unpkg** 也可以使用: 替换 *cdn.jsdelivr.net* 为 *unpkg.com*
> 可以通过替换 *slideout.umd.min.js* 为 *slideout.umd.js* 使用未被压缩的文件来
## 使用
### 全局引用 (推荐)
*main.js*
```javascript
import Vue from 'vue'
import Slideout from '@hyjiacan/vue-slideout'
import '@hyjiacan/vue-slideout/dist/slideout.css'
// 引入 Slideout 组件,并设置组件默认值
Vue.use(Slideout, {
// 在此处填写默认的属性值
})
```
### 组件内引用
*Foobar.vue*
```html
content
```
- 更多的用法,参见 http://hyjiacan.gitee.io/vue-slideout
- API文档参见 [API.zh-CN.md](./API.zh-CN.md)
马上到 [CodePen][codepen]
[codepen]: https://codepen.io/hyjiacan/pen/LYRZONE
## 开发
```bash
yarn
# 启动服务器
yarn serve
# 构建仓库
yarn release
```
## 已知问题
### 溢出问题
情景:当指定了属性 `offset` ,`size` 的高度参数为 `0` (自动适应高度), 并且 `dock=left/right` 时, 内容太高会导致溢出(无滚动条)。
解决方案:显式地给内容指定最大高度为确定的值(注意,不要超出可见区域),如:
```html
```
其中的 `max-height: 540px;overflow: auto` 即可解决此问题。
`max-height` 可以通过 js 计算得到。
> 注意: 可能还需要考虑监听 `window.resize` 事件,以适应浏览器大小的变化。