代码拉取完成,页面将自动刷新
一个 Vue3 的侧滑组件
npm i @hyjiacan/vue-slideout@3
或
yarn add @hyjiacan/vue-slideout@3
你若想要兼容 Vue.js 2.x,那么使用版本 @hyjiacan/vue-slideout@2
。
可以通过以下方式获取最新代码:
git clone https://github.com/hyjiacan/vue-slideout.git
或 下载归档
与 node 环境一样, 此时会暴露一个全局 Slideout
。
使用最新版本
<script src="https://cdn.jsdelivr.net/npm/@hyjiacan/vue-slideout/dist/slideout.umd.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@hyjiacan/vue-slideout/dist/slideout.css"/>
使用指定版本
<script src="https://cdn.jsdelivr.net/npm/@hyjiacan/vue-slideout@<VERSION>/dist/slideout.umd.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@hyjiacan/vue-slideout@<VERSION>/dist/slideout.css"/>
unpkg 也可以使用: 替换 cdn.jsdelivr.net 为 unpkg.com 可以通过替换 slideout.umd.min.js 为 slideout.umd.js 使用未被压缩的文件来
main.js
import Vue from 'vue'
import Slideout from '@hyjiacan/vue-slideout'
import '@hyjiacan/vue-slideout/dist/slideout.css'
// 引入 Slideout 组件,并设置组件默认值
Vue.use(Slideout, {
// 在此处填写默认的属性值
})
Foobar.vue
<template>
<slideout @closing="onClosing" v-model="visible" title="The title">
<div>content</div>
</slideout>
</template>
<script>
import Slideout from '@hyjiacan/vue-slideout'
import '@hyjiacan/vue-slideout/dist/slideout.css'
export default {
name: 'Foobar',
components: { Slideout },
data () {
return {
visible: false
}
},
methods: {
onClosing (e) {
// 阻止关闭,等待同步或异步的操作
e.pause = true
// 3秒后关闭slide
setTimeout(() => {
// 设置 close 为 true 以关闭,设置为 false 为什么也不做保持打开状态
e.resume = true
}, 3000)
}
}
}
</script>
马上到 CodePen
yarn
# 启动服务器
yarn serve
# 构建仓库
yarn release
情景:当指定了属性 offset
,size
的高度参数为 0
(自动适应高度), 并且 dock=left/right
时, 内容太高会导致溢出(无滚动条)。
解决方案:显式地给内容指定最大高度为确定的值(注意,不要超出可见区域),如:
<slide-out dock="left" :size="[300, 0]" offset="100px">
<div style="max-height: 540px;overflow: auto">
<!-- contents -->
</div>
</slide-out>
其中的 max-height: 540px;overflow: auto
即可解决此问题。
max-height
可以通过 js 计算得到。
注意: 可能还需要考虑监听
window.resize
事件,以适应浏览器大小的变化。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. 开源生态
2. 协作、人、软件
3. 评估模型