V-bind指令配合图片轮播案例

news2024/12/29 8:47:50

我们先写个图片,这个图片是静态的,不会轮播改变。但有时图片是动态的,要通过一些程序对它进行动态改变,这时就需要V-bind来进行绑定,先放个图片进去,代码如下:

<template>
	<view>
		<view><image src="../../static/pic1.png"></image></view>
	</view>
</template>

<script setup>
	
</script>

<style lang="scss">

</style>

如图所示,现在就只有这一张图
在这里插入图片描述
接下来,导入ref函数,定义一个对象picurl,然后将刚刚图片的路径粘贴过来,然后在template的src中调用picurl试试,代码如下:

<template>
	<view>
		<view><image src="picurl"></image></view>
	</view>
</template>

<script setup>
	import { Ref, ref } from 'vue';
	
	const picurl = ref("../../static/pic1.png")
</script>

<style lang="scss">

</style>

额,报错了
在这里插入图片描述
这时,就要用到v-bind了,在src的前面加上“v-bind:” ,代码如下:

<template>
	<view>
		<view><image v-bind:src="picurl"></image></view>
	</view>
</template>

<script setup>
	import { ref } from 'vue';
	
	const picurl = ref("../../static/pic1.png")
</script>

<style lang="scss">

</style>

现在图片被调用过来了
在这里插入图片描述
接下来,我们做一个小案例。先定义一个对象数组,放入几张图片进去,代码如下:

<template>
	<view>
		<view><image v-bind:src="arrs"></image></view>
	</view>
</template>

<script setup>
	import { ref } from 'vue';
	const arrs = ref(["../../static/pic1.png",
	"../../static/pic2.png",
	"../../static/pic3.webp",
	"../../static/pic4.jpg"])
	const picurl = ref("../../static/pic1.png")
</script>

<style lang="scss">

</style>

效果如下:
在这里插入图片描述

没有图片显示,是因为单独调用数组是没用的,需要指定数组的下标,加上数组下标,代码如下:

<template>
	<view>
		<view><image v-bind:src="arrs[0]"></image></view>
	</view>
</template>

<script setup>
	import { ref } from 'vue';
	const arrs = ref(["../../static/pic1.png",
	"../../static/pic2.png",
	"../../static/pic3.webp",
	"../../static/pic4.jpg"])
	const picurl = ref("../../static/pic1.png")
</script>

<style lang="scss">

</style>

图片显示出来了
在这里插入图片描述
这里要说明的是,在实际应用中“v-bind:”可以简写为“:”
接下来,使用计时器配合图片,尝试让图片实现轮播,代码如下:

<template>
	<view>
		<view><image :src="picurl"></image></view>
	</view>
</template>

<script setup>
	import { ref } from 'vue';
	const arrs = ref(
	["../../static/pic1.png",
	"../../static/pic2.png",
	"../../static/pic3.webp",
	"../../static/pic4.jpg"]
	) ;
	const picurl = ref("../../static/pic1.png") ;
	let i = 0 ;  //这个值不在模板层渲染,可以不用ref
	setInterval(()=>{
		i++ ;
		console.log(i) ;
		picurl.value = arrs.value[i]
	},1000)
</script>

<style lang="scss">

</style>

效果如下,因为i一直在增加,数组中只有4个图片,所以到后面就没有图片显示了。
在这里插入图片描述
这里的解决办法,就是给变量i % 4 ,代码如下:

<template>
	<view>
		<view><image :src="picurl"></image></view>
	</view>
</template>

<script setup>
	import { ref } from 'vue';
	const arrs = ref(
	["../../static/pic1.png",
	"../../static/pic2.png",
	"../../static/pic3.webp",
	"../../static/pic4.jpg"]
	) ;
	const picurl = ref("../../static/pic1.png") ;
	let i = 0 ;  //这个值不在模板层渲染,可以不用ref
	setInterval(()=>{
		i++ ;
		console.log(i) ;
		picurl.value = arrs.value[i%4]
	},1000)
</script>

<style lang="scss">

</style>

成功实现轮播:
在这里插入图片描述
根据v-bind指令,让我们回到button组件看一看,定义一个button,以属性loading为例,它默认是true的,代码如下:

<template>
	<view>
		<view><image :src="picurl"></image></view>
	</view>
	<button loading="true">按钮!</button>
</template>

<script setup>
	import { ref } from 'vue';
	const arrs = ref(
	["../../static/pic1.png",
	"../../static/pic2.png",
	"../../static/pic3.webp",
	"../../static/pic4.jpg"]
	) ;
	const picurl = ref("../../static/pic1.png") ;
	let i = 0 ;  //这个值不在模板层渲染,可以不用ref
	setInterval(()=>{
		i++ ;
		console.log(i) ;
		picurl.value = arrs.value[i%4]
	},1000)
</script>

<style lang="scss">

</style>

效果如下:
在这里插入图片描述
可以看到,loading = “true” 目前是起作用的,但如果想把它关闭换成”false“呢,代码如下:

<template>
	<view>
		<view><image :src="picurl"></image></view>
	</view>
	<button loading="false">按钮!</button>
</template>

<script setup>
	import { ref } from 'vue';
	const arrs = ref(
	["../../static/pic1.png",
	"../../static/pic2.png",
	"../../static/pic3.webp",
	"../../static/pic4.jpg"]
	) ;
	const picurl = ref("../../static/pic1.png") ;
	let i = 0 ;  //这个值不在模板层渲染,可以不用ref
	setInterval(()=>{
		i++ ;
		console.log(i) ;
		picurl.value = arrs.value[i%4]
	},1000)
</script>

<style lang="scss">

</style>

效果如下:
在这里插入图片描述
将属性loading修改为false,但没有变化,这是因为,这里的false是以字符串的形式存在的,若要实现真正的false,需要在loading前加上v-bind:,这里我们就用简写”:“,代码如下:

<template>
	<view>
		<view><image :src="picurl"></image></view>
	</view>
	<button :loading="false">按钮!</button>
</template>

<script setup>
	import { ref } from 'vue';
	const arrs = ref(
	["../../static/pic1.png",
	"../../static/pic2.png",
	"../../static/pic3.webp",
	"../../static/pic4.jpg"]
	) ;
	const picurl = ref("../../static/pic1.png") ;
	let i = 0 ;  //这个值不在模板层渲染,可以不用ref
	setInterval(()=>{
		i++ ;
		console.log(i) ;
		picurl.value = arrs.value[i%4]
	},1000)
</script>

<style lang="scss">

</style>

效果如下:
在这里插入图片描述
按钮停止加载动画了,成功!

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

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

相关文章

智驾追平、销量复活,蔚来又有未来了?

文&#xff5c;刘俊宏 编&#xff5c;王一粟 六月&#xff0c;是智能汽车集体“狂欢”的月份。 根据最新的汽车销量显示&#xff0c;多家智能汽车厂商“开起了香槟”。理想汽车和鸿蒙智行分列“榜一榜二”&#xff0c;两者分别以47774辆和46141辆的成绩&#xff0c;“咬的难…

探索Linux:开源世界的无限可能

Linux是一款开源操作系统&#xff0c;它的起源可以追溯到上世纪90年代初。这个故事始于一个名叫Linus Torvalds的芬兰大学生&#xff0c;他在1983年开始编写一个用于个人电脑的操作系统内核。在他的努力下&#xff0c;Linux逐渐发展成为一个稳定而强大的操作系统。 然而&#…

预测未来 | Matlab实现HMM隐马尔科夫时间序列预测未来

预测未来 | Matlab实现HMM隐马尔科夫时间序列预测未来 目录 预测未来 | Matlab实现HMM隐马尔科夫时间序列预测未来效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.预测未来 | Matlab实现HMM隐马尔科夫时间序列预测未来 2.运行环境为Matlab2023b及以上&#xff1b; 3…

安卓手机软件自动运行插件的开发流程及代码科普!

随着智能手机的普及和移动互联网的快速发展&#xff0c;安卓手机软件的需求日益旺盛&#xff0c;为了提高软件的功能性和扩展性&#xff0c;许多开发者选择通过插件的方式为软件添加新功能。 一、安卓手机软件自动运行插件的开发流程 1、明确需求与目标 在开发安卓手机自动运…

炎黄数智人:万科集团——智能催收专员‘崔筱盼’,引领财务管理数字化转型

在数字化时代的浪潮中&#xff0c;人工智能&#xff08;AI&#xff09;技术的飞速发展正深刻改变着商业世界的面貌。万科集团&#xff0c;作为中国房地产行业的翘楚&#xff0c;一直致力于探索和实践最前沿的科技创新。此次&#xff0c;万科集团推出的数字员工“崔筱盼”&#…

pytorch、pytorch_lightning、torchmetrics版本对应

目录 1.pytorch_lightning对应版本安装 2.PyTorch Lightning介绍 PyTorch Lightning 的作用&#xff1a; PyTorch Lightning 的基本用法&#xff1a; 报错&#xff1a;ModuleNotFoundError: No module named pytorch_lightning 这种报错一看就是缺了pytorch_lightning包&am…

idea使用maven打包报错GBK不可映射字符,错误: 编码GBK的不可映射字符

方法一&#xff1a;设置环境变量 打开“控制面板” > “系统和安全” > “系统”。点击“高级系统设置”。在“系统属性”窗口中&#xff0c;点击“环境变量”。在“系统变量”部分&#xff0c;点击“新建”&#xff0c;创建一个新的变量&#xff1a; 变量名&#xff1a;…

网工内推 | 高级信息安全工程师,上市公司,CISP认证优先

01 奔图电子 &#x1f537;招聘岗位&#xff1a;高级信息安全工程师 &#x1f537;岗位职责&#xff1a; 1、建立和完善研发信息安全管理体系、流程&#xff0c;监督和客观评价研发信息安全管理与风险内部控制情况 2、负责研发信息安全项目的实施和监督&#xff0c;包括安全检…

游戏工作室如何巧妙应对IP封禁风险?

游戏工作室在使用IP时&#xff0c;面临着封号的风险&#xff0c;因此需要采取一些防封技巧来保护自己的运营。以下是一些游戏工作室常用的防封技巧。 1. 多IP轮换 游戏工作室可以使用多个代理IP&#xff0c;并定期轮换它们。这样做可以减少单个IP被频繁访问同一游戏服务器而被…

2024.7.3作业

1. 梳理笔记(原创) 明天继续提问 2.程序运行后的输出结果为&#xff08;1&#xff09; #include <stdio.h> #define SQR(X) X*X void main() { int a10,k2,m1; a / SQR(km)/SQR(km); printf("%d\n",a); } 结果为1

有哪些不同的视频格式及其用途?

数字格式的视频文件由两部分组成&#xff0c;即“编解码器”和“容器”。“编解码器”用于压缩和解压缩视频文件&#xff0c;因为有时视频文件太大&#xff0c;在尝试下载或播放文件时可能会造成困难。“编解码器”的一些示例有FFMpeg、DivX、XviD和x264。“容器”是存储有关数…

服了!DELETE 同一行记录也会造成死锁!!

1 问题背景 “哥们&#xff0c;又双叒叕写了个死锁&#xff0c;秀啊&#xff01;&#x1f60f;” 就算是经常写死锁的同学看到估计都会有点懵&#xff0c;两条一模一样的 DELETE 语句怎么会产生死锁呢&#xff1f; 2 MySQL 锁回顾 看到这里的靓仔肯定对 MySQL 的锁非常了解&…

Maya模型仓鼠制作

小仓鼠建模&#xff08;6&#xff09;_哔哩哔哩_bilibili 20240623模型制作 20240630模型制作 正方体经过两次连续细化&#xff0c;得到一个初步的模型 眼球使用球体代替 模型避免出现多边面&#xff0c;游戏中常用三角面&#xff0c;动漫电影使用四边面 布线的重要性&#…

俄罗斯ozon运费计算工具,跨境电商ozon物流运费计算工具

OZON平台服装类目卖家而言&#xff0c;如何快速、准确地为产品定价&#xff0c;并有效管理运费成本&#xff0c;直接关系到市场竞争力与利润空间。接下来我们看看俄罗斯ozon运费计算工具&#xff0c;跨境电商ozon物流运费计算工具。 萌啦Ozon定价工具&#xff1a;智能模拟&…

iOS 视图实现渐变色背景

需求 目的是要实现视图的自定义的渐变背景色&#xff0c;实现一个能够随时使用的工具。 实现讨论 在 iOS 中&#xff0c;如果设置视图单一的背景色&#xff0c;是很简单的。可是&#xff0c;如果要设置渐变的背景色&#xff0c;该怎么实现呢&#xff1f;其实也没有很是麻烦&…

mysql逗号分割字符串“1,2,3”实现in查询

数据示例 前台单值参数实现in查询 主要函数FIND_IN_SET 该函数的作用是查询字段(strlist) 中是否包含(str)的结果&#xff0c;返回结果为 null或记录 select id,recommend_position_id from t_stk_task where FIND_IN_SET(359919,recommend_position_id)查询效果 前台集…

X86 +PC104+支持WinCE5.0,WinCE6.0,DOS,WinXP, QNX等操作系统,工业控制数据采集核心模块板卡定制

CPU 模块 是一款基于RDC 3306的SOM Express模块。RDC 3306这款X86架构的CPU是一款性能高、稳定性强的处理器。 它是一款灵活精巧的主板&#xff08;尺寸为91.8mm68.6mm&#xff09;&#xff0c;可以灵活的运用于用户的底板&#xff0c;节约开发成本。模块的接插件使用插针形式…

JavaScript 混淆工具: javascript-obfuscator

文章目录 引言I 压缩、混淆、加密技术简述1.1 压缩、混淆、加密技术1.2 JavaScript 混淆技术II JavaScript脚本混淆工具javascript-obfuscator 使用方法2.1 命令行用法2.2 在浏览器中使用2.3 使用本地node_modules2.4 `obfuscate(sourceCode, options)`方法2.5 禁用和启用代码片…

主食冻干复查|希喂、喜崽、生生不息可以盲选吗?测评结果来揭秘

在挑选主食冻干时&#xff0c;许多宠物主人都会感到头疼。尽管主食冻干相较于普通猫粮具有诸多优势&#xff0c;但其价格也相对高昂。这导致许多宠物主人担心高价购买的主食冻干可能营养价值并不理想。然而&#xff0c;在选择时&#xff0c;我们还需要考虑其他重要因素&#xf…