Vue3 + Swiper = 天作之合 ❤️

🧭 前言

Swiper 是前端轮播图界的扛把子💪,而 Swiper Element 是它的 Web Components 版本,兼容性强、使用简单,特别适合 Vue3 项目中直接上手!

今天我们就来搞定它!🏗️


🛠️ 步骤一:安装 swiper

首先当然是安装依赖啦~ 打开你的终端,输入👇

npm install swiper
# 或者用 yarn
yarn add swiper

💡 Tip:这里我们用的是 swiper 的 Web Components 版本,不是 vue-awesome-swiper 哦!vue-awesome-swiper已经不再维护啦!


🧱 步骤二:在 main.js 中注册 Swiper Element

Swiper Element 是原生 Web Component,所以要先注册一下,不然 Vue 不认识它 👀

👉 打开你的 main.js 或 main.ts,加入以下代码:

// main.js
import { createApp } from 'vue'
import App from './App.vue'

// 引入 swiper 的 element bundle
import 'swiper/element/bundle'

// 注册 swiper 的自定义元素
import { register } from 'swiper/element/bundle'
register() // 💥 必须注册!

createApp(App).mount('#app')

✨ 到这一步,Swiper 的组件就可以在全局用了!


🎨 步骤三:在组件中使用 swiper-container 和 swiper-slide

在你想放轮播图的 Vue 组件中,直接写👇(是不是很像原生标签?就是这么丝滑~)

<!-- App.vue -->
<template>
  <swiper-container
    slides-per-view="1"
    navigation="true"
    pagination="true"
    loop="true"
    style="width: 600px; height: 300px;"
  >
    <swiper-slide>🌟 Slide 1</swiper-slide>
    <swiper-slide>🚀 Slide 2</swiper-slide>
    <swiper-slide>🎉 Slide 3</swiper-slide>
  </swiper-container>
</template>

<script setup>
// 不需要再引入 Swiper 组件了,已经全局注册啦~
</script>

<style scoped>
/* 可选样式:你也可以自定义按钮、分页器等样式 */
</style>

✅ 到这里,轮播图已经跑起来啦!是不是超级简单!


🧩 Bonus:监听事件也很 easy!

Swiper 的事件也能直接监听,像这样👇

<swiper-container
  @slidechange="onSlideChange"
  @swiperprogress="onProgress"
>
  <swiper-slide>😎 Slide A</swiper-slide>
  <swiper-slide>🔥 Slide B</swiper-slide>
</swiper-container>

<script setup>
function onSlideChange(e) {
  console.log('Slide changed!', e.detail)
}

function onProgress(e) {
  console.log('Swiper progress:', e.detail)
}
</script>

🧠 总结一下(划重点‼️)

✅ 安装 swiper
✅ 在 main.js 注册 Web Components
✅ 在组件中直接用 swiper-container & swiper-slide
✅ 支持属性传参 + 事件监听
✅ 样式也都打包好了,开箱即用!


🚀 最后

如果你觉得这个轮播图用起来舒服,那就冲!💥
如果你遇到问题,欢迎评论区留言,我们一起 debug!🛠️
如果你觉得有用,点个 Star ⭐ 或转发给小伙伴吧!

Swiper + Vue3 = 天作之合 ❤️


原文链接:https://juejin.cn/post/7487903297832747048

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值