具有 Vue 3 视频支持的弹出式画廊插件?
Popup gallery plugin with video support for Vue 3?
我进行了一些认真的互联网搜索,以找到支持图像和视频文件的 Vue 3 的弹出式画廊插件。大多数插件都是为 Vue 2 编写的。
谁能推荐一个好的插件? (类似于 fancybox/lightbox)
我已经用 fancyapps 解决了这个问题。因为它是用 vanilla JS 编写的,所以我可以轻松地将它包含在我的 Vue 文件中。唯一的区别是您不需要将其注册为组件。
P.S。为了在页面加载时使用 fancyapps,您需要在 activated()
生命周期钩子中添加初始化代码。
FancyboxItem.vue
首先导入fancybox:
import {Fancybox} from "/@fancyapps/ui/src/Fancybox/Fancybox";
此外,css 是必需的:
<style lang="scss" scoped>
@import "@fancyapps/ui/dist/fancybox.css";
</style>
然后在我的模板中添加了一个带有点击事件的按钮。
<template>
<button id="play-button" @click="startFancy()"></button>
</template>
并且在方法中,我创建了一个启动 fancybox 的函数:
methods: {
startFancy: {
var gallery = this.imgs; //your object with images
Fancybox.show(gallery, {}); //starts fancybox with the gallery object
}
}
我进行了一些认真的互联网搜索,以找到支持图像和视频文件的 Vue 3 的弹出式画廊插件。大多数插件都是为 Vue 2 编写的。
谁能推荐一个好的插件? (类似于 fancybox/lightbox)
我已经用 fancyapps 解决了这个问题。因为它是用 vanilla JS 编写的,所以我可以轻松地将它包含在我的 Vue 文件中。唯一的区别是您不需要将其注册为组件。
P.S。为了在页面加载时使用 fancyapps,您需要在 activated()
生命周期钩子中添加初始化代码。
FancyboxItem.vue
首先导入fancybox:
import {Fancybox} from "/@fancyapps/ui/src/Fancybox/Fancybox";
此外,css 是必需的:
<style lang="scss" scoped>
@import "@fancyapps/ui/dist/fancybox.css";
</style>
然后在我的模板中添加了一个带有点击事件的按钮。
<template>
<button id="play-button" @click="startFancy()"></button>
</template>
并且在方法中,我创建了一个启动 fancybox 的函数:
methods: {
startFancy: {
var gallery = this.imgs; //your object with images
Fancybox.show(gallery, {}); //starts fancybox with the gallery object
}
}