vue2 引用swiper

news2024/11/24 13:53:20

参考引用 :

vue使用swiper实现轮播图一页多张图片效果_swiper多张图片排列的轮播_空空的博客-CSDN博客

 vue2 使用swiper_vue2使用swiper__NIXIAKF的博客-CSDN博客

 常见的属性:Swiper 中常见的属性以及方法_swiper-wrapper_超勇的.的博客-CSDN博客

 

 1、运行安装命令

npm i swiper@5.x vue-awesome-swiper -s

安装后如果无法使用左右切换建议更改版本

手动强制更改然后重启项目  

 "swiper": "^5.4.5",
 "vue-awesome-swiper": "^4.1.1",

 

2、main.js引入 

import Swiper from 'swiper'
import 'swiper/dist/css/swiper.min.css'

 import "../../../static/css/swiper.min.css";  引用  import 'swiper/dist/css/swiper.min.css'

根据自己的情况更改地址

3、页面

<template>
    <div>
        <div class="sectionbox">
            <section class="pc-banner">
                <div class="swiper-container">
                    <div
                        class="swiper-wrapper"
                        style="display: flex; align-items: center"
                    >
                        <div
                            class="swiper-slide swiper-slide-center none-effect"
                        >
                            <img
                                src="https://img1.baidu.com/it/u=1472391233,99561733&fm=253&fmt=auto&app=120&f=JPEG?w=889&h=500"
                                alt=""
                            />
                        </div>
                        <div class="swiper-slide">
                            <img
                                src="https://img1.baidu.com/it/u=3007048469,3759326707&fm=253&fmt=auto&app=120&f=JPEG?w=889&h=500"
                                alt=""
                            />
                        </div>
                        <div class="swiper-slide">
                            <img
                                src="https://img2.baidu.com/it/u=2028084904,3939052004&fm=253&fmt=auto&app=120&f=JPEG?w=889&h=500"
                                alt=""
                            />
                        </div>
                        <div class="swiper-slide">
                            <img
                                src="https://img1.baidu.com/it/u=4049022245,514596079&fm=253&fmt=auto&app=120&f=JPEG?w=889&h=500"
                                alt=""
                            />
                        </div>
                    </div>
                </div>
                <div class="swiper-pagination"></div>
                <div class="button">
                    <div
                        class="swiper-button-prev"
                        slot="button-prev"
                        @click="swiperPrev"
                    ></div>
                    <div
                        class="swiper-button-next"
                        slot="button-next"
                        @click="swiperNext"
                    ></div>
                </div>
            </section>
        </div>
        <!-- <div style="margin-top: 50px"></div>
        <div class="radius"></div> -->
    </div>
</template>
     
     <script>
//      https://blog.csdn.net/weixin_50114203/article/details/129488818
//      "swiper": "^5.4.5",
//      "vue-awesome-swiper": "^4.1.1",
import Swiper from "swiper";
//      import 'swiper/dist/css/swiper.min.css'
import "../../../static/css/swiper.min.css";
export default {
    data() {
        return {};
    },
    mounted() {
        this.$nextTick(() => {
            this.Lunbo();
        });
    },
    methods: {
        Lunbo() {
            var swiper = new Swiper(".swiper-container", {
                slidesPerView: 4,
                // breakpoints: {
                //     750: {
                //         slidesPerView: 1,
                //     },
                //     990: {
                //         slidesPerView: 2,
                //     },
                // },
                // spaceBetween: 0,
                spaceBetween: 0, //按container的百分比
                loop: true,
                speed: 1000,
                // autoplay: true,
                autoplay: {
                    delay: 2600,
                    stopOnLastSlide: true,
                    disableOnInteraction: true,
                },
                autoplayDisableOnInteraction: false,
                disableOnInteraction: true,
                observer: true,
                observeParents: true,
                pagination: ".swiper-pagination",
                // 设置分页器
                // pagination: {
                //   el: '.swiper-pagination',
                //   // 设置点击可切换
                //   clickable: true
                // },
                paginationClickable: true,
                mousewheelControl: true,
                debugger: true,
                navigation: {
                    nextEl: ".swiper-button-next",
                    prevEl: ".swiper-button-prev",
                },
                on: {
                    touchStart: function (swiper, event) {
                        //       alert('事件触发了;');
                    },
                },
            });
        },

        swiperNext() {
            //     this.$refs.interSwiper.$swiper.slideNext()
        },
        swiperPrev() {
            //     this.$refs.interSwiper.$swiper.slidePrev()
            // console.log(this.$refs.interSwiper)
        },
    },
};
</script>
     

<style lang="scss" scoped>
// .radius{
//     width: 50px;
//     height: 150px;
//  //     background-image: radial-gradient(50px at top left,#fff 50px, #f00);
// }

.radius {
    width: 100%;
    height: 34%;
    position: relative;
}

.radius::before {
    position: absolute;
    content: "";
    display: block;
    top: 34px;
    left: 155px;
    width: 270px;
    height: 190px;
    border-radius: 2px 0 0 2px;
    background: radial-gradient(70px at right, transparent 97%, #007297 50%);
    background: radial-gradient(70px at right, transparent 97%, #007297 50%);
    z-index: 2;
}

/* 置灰按钮的样式 */
.my-button-disabled {
    opacity: 0.5;
}

.sectionbox {
    text-align: center;
    width: 80%;
    padding-left: 30px;
    padding-right: 30px;
    position: relative;
    .button {
        // width: 50px;
        // height: 50px;
        // // display: inline-block;
        // background: red;
    }
}
.swiper-container {
    img {
        // height: 200px;
        width: 300px;
    }
}
</style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/841611.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

8月16日起!亚马逊新商品上架需更新产品类型的274个属性!

亚马逊美国站发布公告称为了帮助买家更轻松地搜索产品&#xff0c;改善买家的购买决策提高卖家的销量&#xff0c;8月16日起受影响的200种产品类型的274个属性在上架前需更新属性&#xff0c;以下是公告内容&#xff1a; 自2023年8月16日起&#xff0c;200种产品类型的274个属…

想在金融界拥有一席之地吗—社科院杜兰大学金融管理硕士助你圆梦

追求高学历是为了什么&#xff1f;一纸证书吗&#xff1f;显然并非如此&#xff0c;只有读过研的人才有话语权。在上升一个平台后&#xff0c;你必然会发现&#xff0c;更高学历得到的不止是一张文凭。而是更大的平台、更广阔的视野、更包容的环境&#xff0c;更多样的文化。最…

Clion开发Stm32之存储模块(W25Q64)驱动编写

前言 涵盖之前文章: Clion开发STM32之HAL库SPI封装(基础库) W25Q64驱动 头文件 #ifndef F1XX_TEMPLATE_MODULE_W25Q64_H #define F1XX_TEMPLATE_MODULE_W25Q64_H#include "sys_core.h" /* Private typedef ---------------------------------------------------…

【0805作业】Linux中 AB终端通过两根有名管道进行通信聊天(半双工)(全双工)

作业一&#xff1a;打开两个终端&#xff0c;要求实现AB进程对话【两根管道】 打开两个终端&#xff0c;要求实现AB进程对话 A进程先发送一句话给B进程&#xff0c;B进程接收后打印B进程再回复一句话给A进程&#xff0c;A进程接收后打印重复1.2步骤&#xff0c;当收到quit后&am…

最佳路径优先搜索算法

本来想直接写A* 的&#xff0c;不过看完最佳路径优先搜索算法后觉得还是要先理解一下这个算法后才能更好的理解A* 算法&#xff0c;所以把这篇文章放到A* 前面。 基本概念 最佳优先搜索算法&#xff08;Best-first-searching&#xff09;是一种启发式搜索算法&#xff08;Heu…

element vue2 动态添加 select+tree

难点在 1 添加一组一组的渲染 是往数组里push对象 循环的&#xff1b;但是要注意对象的结构! 因为这涉及到编辑完成后&#xff0c;表单提交时候的 校验&#xff01; 是校验每一个select tree里边 是否勾选 2 是在后期做编辑回显的时候 保证后端返回的值 是渲染到 select中的tr…

Markdown系列之Flowchat流程图

一.欢迎来到我的酒馆 介绍Markdown的Flowchart流程图语法。 目录 一.欢迎来到我的酒馆二.什么是Flowchart三.更进一步 二.什么是Flowchart 2.1 Flowchart是一款基于javascript的工具&#xff0c;使用它可以用代码创建简单的流程图。具体信息可以查看flowchart官网&#xff1a;…

vscode 设置滑条颜色

1. 默认的滑条是灰黑色的&#xff0c;很难看的清 2. 左下角&#xff0c;打开VS Code 设置功能 3. 输入命令 workbench color&#xff0c;回车 4. 找到工作台&#xff1a;自定义颜色设置&#xff0c;打开设置文件 setting.json 5. 打开配置文件 6. 添加颜色配置 "workben…

【C++】开源:事件驱动网络库libevent配置使用

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍事件驱动库libevent配置使用。 无专精则不能成&#xff0c;无涉猎则不能通。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&#xf…

C++——STL容器【priority_queue】模拟实现

本章代码&#xff1a;优先级队列模拟实现、priority_queue文档 文章目录 &#x1f408;1. priority_queue介绍&#x1f984;2. priority_queue模拟实现&#x1f427;2.1 构造函数&#x1f427;2.2 建堆向下调整向上调整 &#x1f427;2.3 仿函数&#x1f427;2.4 push & po…

通向架构师的道路之漫谈使用ThreadLocal改进你的层次的划分

一、什么是ThreadLocal 早在JDK 1.2的版本中就提供java.lang.ThreadLocal&#xff0c;ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。 ThreadLocal很容易让人望文生义&#xff0c;想当然地认为是一个“本地线…

MapTR论文笔记

MAPTR: STRUCTURED MODELING AND LEARNING FOR ONLINE VECTORIZED HD MAP CONSTRUCTION 目的 传统高精地图 通过一些离线的基于 SLAM 的方法生成&#xff0c;需要复杂的流程以及高昂的维护费用。基于 bev 分割的建图方法&#xff0c;缺少向量化 实例级的信息&#xff0c;比如…

SPM(Swift Package Manager)开发及常见事项

SPM怎么使用的不再赘述&#xff0c;其优点是Cocoapods这样的远古产物难以望其项背的&#xff0c;而且最重要的是可二进制化、对xcproj项目无侵入&#xff0c;除了网络之外简直就是为团队开发的项目库依赖最好的管理工具&#xff0c;是时候抛弃繁杂低下的cocoapods了。 一&…

如何使用 ChatGPT 规划家居装修

你正在计划家庭装修项目&#xff0c;但不确定从哪里开始&#xff1f;ChatGPT 随时为你提供帮助。从集思广益的设计理念到估算成本&#xff0c;ChatGPT 可以简化你的家居装修规划流程。在本文中&#xff0c;我们将讨论如何使用 ChatGPT 有效地规划家居装修&#xff0c;以便你的项…

vue diff 前后缀+最长递增子序列算法

文章目录 查找相同前后缀通过前后缀位置信息新增节点通过前后缀位置信息删除节点 中间部份 diff判断节点是否需要移动删除节点删除未查找到的节点删除多余节点 移动和新增节点最长递增子序列 求解最长递增子序列位置信息 查找相同前后缀 如上图所示&#xff0c;新旧 children 拥…

SCT82A30DHKR_5.5V-100V Vin同步降压控制器

SCT82A30是一款100V电压模式控制同步降压控制器&#xff0c;具有线路前馈。40ns受控高压侧MOSFET的最小导通时间支持高转换比&#xff0c;实现从48V输入到低压轨的直接降压转换&#xff0c;降低了系统复杂性和解决方案成本。如果需要&#xff0c;在低至6V的输入电压下降期间&am…

Photoshop 2023 25.0beta「Mac」

Photoshop 2023是一款专业图像处理软件&#xff0c;它主要用于图像编辑、合成和设计等方面。 Photoshop beta创新式填充的功能特色包括&#xff1a; 自动识别和删除对象&#xff1a;该功能可以自动识别图像中的对象&#xff0c;并用周围的图像填充空白部分&#xff0c;使图像看…

window系统下 tinymce富文本编辑器在搜狗输入法下placeholder不消失现象

window 搜狗输入法下编辑器占位符和内容重叠问题 这种情况是&#xff0c;tinymce插件库存在一些兼容BUG&#xff0c;需要我们自行手写样式或者js替换掉placeholder&#xff0c;代码如下&#xff1a; // 获取富文本框的内容const handleChange (editorContent) > {// cons…

C++11 新特性 ---- final 和 override

一、final C中增加了final关键字&#xff0c;作用如下&#xff1a; ① 限制某个类不能被继承② 或者某个虚函数不能被重写 ① 限制某个类不能被继承 // ① 限制某个类不能被继承,也就是说这个类不能有派生类 class Base{ public:virtual void print() {cout<<"Ba…

电商数据获取:网络爬虫还是付费数据接口?

随着电商行业的迅速发展&#xff0c;对电商数据的需求也越来越大。在获取电商数据时&#xff0c;常常面临一个选择&#xff1a;是自己编写网络爬虫进行数据爬取&#xff0c;还是使用现有的付费数据接口呢&#xff1f;本文将从成本、可靠性、数据质量等多个角度进行分析&#xf…