Lightbox 灯箱
示例
<template>
<article>
<section>
<veui-check-box
v-model="wrap"
class="checkbox"
>
循环播放
</veui-check-box>
<veui-check-box
v-model="indicator"
class="checkbox"
true-value="number"
false-value="none"
>
头部页码
</veui-check-box>
</section>
<veui-button
ui="primary"
@click="open = true"
>
展现灯箱
</veui-button>
<veui-lightbox
:open.sync="open"
:datasource="items"
:wrap="wrap"
:indicator="indicator"
/>
</article>
</template>
<script>
import { Lightbox, Checkbox, Button } from 'veui'
export default {
components: {
'veui-lightbox': Lightbox,
'veui-check-box': Checkbox,
'veui-button': Button
},
data () {
return {
wrap: false,
indicator: 'number',
open: false
}
},
computed: {
items () {
return [
{
src:
'https://ecmb.bdimg.com/public01/one-design/2b77cc4a4c5c906993c0e512f3ddaf03.jpg',
alt: 'A cute kitty looking at you with its greenish eyes.',
desc: 'Cat'
},
{
src:
'https://ecmb.bdimg.com/public01/one-design/6fedc62b9221846ce5114c7447622e47.jpeg',
alt: 'A common kingfisher flying above river.',
desc: 'Kingfisher'
},
{
src: 'https://interactive-examples.mdn.mozilla.net/media/cc0-videos/flower.webm',
alt: 'flower video',
desc: '花',
type: 'video'
},
{
src:
'https://ecmb.bdimg.com/public01/one-design/e1b6473c898d9e456452ee79d7533a86.jpeg',
alt: 'A white and gray dolphin in blue water.',
desc: 'Dolphin'
}
]
}
}
}
</script>
<style lang="less" scoped>
.checkbox {
margin-right: 15px;
}
section {
margin-bottom: 12px;
}
</style>
API
属性
名称 | 类型 | 默认值 | 描述 | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ui | string | - | 预设样式。veui-theme-dls 未提供,可自定义。 | |||||||||||||||
open | boolean | false |
是否显示浮层。 | |||||||||||||||
datasource | Array<Object> | [] | 灯箱数据源,项目类型为:
| |||||||||||||||
index | number | 0 |
当前播放序号。 | |||||||||||||||
wrap | boolean | false | 是否可以循环播放。 | |||||||||||||||
closable | boolean | true | 是否显示关闭按钮。 | |||||||||||||||
escapable | boolean | true | 按下 esc 键是否可以关闭浮层。仅在 closable 为 true 时生效。 | |||||||||||||||
outside-closable | boolean | true | 点击内容区域外部时是否关闭对话框。 | |||||||||||||||
priority | number | - | 浮层层叠权重,参考 Overlay 组件的 priority 属性。 | |||||||||||||||
before-close | function(string): boolean=|Promise<boolean=> | - | 在将触发浮层关闭的操作发生后执行,类型为
| |||||||||||||||
overlay-class | string | Array | Object | - | 浮层根元素类名,参考 Overlay 组件的 overlay-class 属性。 | |||||||||||||||
indicator | string | 'number' | 播放进度指示器的显示模式。
| |||||||||||||||
options | Object | { video: { muted: true, autoplay: true, controls: true } } | 额外配置。 | |||||||||||||||
lazy | boolean= | { preload: number } | false | 指定是否懒加载轮播资源。
|
插槽
名称 | 描述 |
---|---|
item | 可用来定制每个灯箱项的媒体展示区域。 默认内容:每项图片或视频。 插槽参数为 |
desc | 可用来定制每个灯箱项的描述区域。 默认内容:每项描述文字。 插槽参数为 |
事件
名称 | 描述 |
---|---|
close | 进行触发关闭操作的动作时触发。 |
图标
名称 | 描述 |
---|---|
close | 关闭。 |
prev | 上一页。 |
next | 下一页。 |