2020 零基础 Vue快速入门 Vue指令 本地应用篇【整理】

本文深入讲解Vue.js中的各种指令,包括内容绑定、事件绑定、显示切换、属性绑定、列表循环及表单元素绑定等,通过实例演示如何使用v-text、v-html、v-on、v-show、v-if、v-bind、v-for和v-model等指令。

文章目录

 

1、引言

本地应用:

  •  通过Vue实现常见的网页效果
  •  学习Vue指令,以案例巩固知识点
  •  Vue指令指的是,以v-开头的一组特殊语法

2、内容绑定,事件绑定

① v-text指令

能替换整个标签的内容,另字符串拼接格式详见代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>第一个Vue程序</title>
		<!-- 开发环境版本,包含了有帮助的命令行警告-->
		<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
	</head>
	<body>
		<div id="app">
			<h3 v-text="message+'!'"> 你好,Vue</h3>
			<h3>{{message+'!'}} 你好,Vue</h3>
		</div>
		<script type="text/javascript">
			var app = new Vue({
				el: '#app',
				data:{
					message: "Hello Vue"
				}
			});
		</script>
		
	</body>
</html>

② v-html指令

  •  能解析html内容
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>第一个Vue程序</title>
		<!-- 开发环境版本,包含了有帮助的命令行警告-->
		<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
	</head>
	<body>
		<div id="app">
			<p v-html='content'></p>
		</div>
		<script type="text/javascript">
			var app = new Vue({
				el: '#app',
				data:{
					content: '<a href="https://blog.youkuaiyun.com/weixin_42429718">点击进入博主主页并关注!</a>'
				}
			});
		</script>
		
	</body>
</html>

v-on指令

  •  为元素绑定事件
    但是我们平常更习惯性的把v-on:直接替换为@ 方便写也方便记
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>第一个Vue程序</title>
		<!-- 开发环境版本,包含了有帮助的命令行警告-->
		<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
	</head>
	<body>
		<div id="app">
			<input type="button" value="点击事件" @click="clickIt"/>
			<h3 @click="clickIt">{{message}}</h3>
		</div>
		<script type="text/javascript">
			var app = new Vue({
				el: '#app',
				data:{
					message:"点击一下?"
				},
				methods:{
					clickIt:function(){
						this.message+="点个关注呗~"
					}
				}	
			});
		</script>
	</body>
</html>

 

2.1 简单计数器应用
步骤:

 1.data中定义数据:比如num
 2.methods中添加两个方法:比如add(递增),sub(递减)
 3.使用v-text将num设置给span标签
 4.使用v-on将add和sub分别绑定给+,-按钮
 5.累加的逻辑:小于10累加,否则提示“不能再加了!”
 6.递减的逻辑:大于0递减,否则提示“不能再减了!”
 

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>第一个Vue程序</title>
		<!-- 开发环境版本,包含了有帮助的命令行警告-->
		<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
	</head>
	<body>
		<div id="app">
			<button @click="add">+</button>
			<span>{{num}}</span>
			<button @click="sub">-</button>
		</div>
		<script type="text/javascript">
			var app = new Vue({
				el: '#app',
				data:{
					num:1
				},
				methods:{
					add:function(){
						if(this.num<10){
							this.num++
						}else{
							alert('不能再加了!')
						}
					},
					sub:function(){
						if(this.num>0){
							this.num--
						}else{
							alert('不能再减了!')
						}
					}
				}
			});
		</script>
	</body>
</html>

 

3、显示切换,属性绑定

v-show指令

  •  根据表达值的真假,切换元素的显示和隐藏

ps:下面就展示一个例子,用到了上一章讲到的事件绑定,可以进行图片显示或隐藏

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>第一个Vue程序</title>
		<!-- 开发环境版本,包含了有帮助的命令行警告-->
		<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
	</head>
	<body>
		<div id="app">
			<img src="https://s2.ax1x.com/2019/06/14/V5R7od.png" v-show="isShow"/>
			<img src="https://s2.ax1x.com/2019/06/14/V5R7od.png" v-show="age>=18"/>
			<button @click="cc">点击显示或隐藏</button>
		</div>
		<script type="text/javascript">
			var app = new Vue({
				el: '#app',
				data:{
					isShow:false,
					age:16
				},
				methods:{
					cc:function(){
						this.isShow=!this.isShow
					}
				}
			});
		</script>
	</body>
</html>

v-if指令

 根据表达值的真假,切换元素的显示和隐藏(操纵dom元素)

表面上和v-show差不多,但是实际上有点区别:
具体详细如下:

v-show操纵的是display 看这个标签显示不显示

而v-if操纵的是标签 如果为false 则会删除这整个标签(也就是html不会显示这个标签)然后v-show则不会
 

 

v-bind指令

使用方式:
v-bind:属性名=表达式

但vue里面我们能够省去v-bind 即为 :属性名=表达式 的方式

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>第一个Vue程序</title>
		<!-- 开发环境版本,包含了有帮助的命令行警告-->
		<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
		<style>
			.active{
				border: 5px solid orangered;
			}
		</style>
	</head>
	<body>
		<div id="app">
			<img :src="imgSrc" :title="imgTitle+'!'" @click="cclick" :class="{active:isActive}"/>
		</div> 
		<script type="text/javascript">
			var app = new Vue({
				el: '#app',
				data:{
					imgSrc:"https://s2.ax1x.com/2019/06/14/V5R7od.png",
					imgTitle:"追风筝的人",
					isActive:false
				},
				methods:{
					cclick:function(){
						this.isActive=!this.isActive
					}
				}
			});
		</script>
	</body>
</html>

 

4、列表循环,表单元素绑定

v-for指令
根据数据生成列表结构

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>第一个Vue程序</title>
		<!-- 开发环境版本,包含了有帮助的命令行警告-->
		<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
	</head>
	<body>
		<div id="app">
			<li v-for="(item,index) in array">
				{{item}}
			</li>
		</div>
		<script type="text/javascript">
			var app = new Vue({
				el: '#app',
				data:{
					array:['计算机','市场营销','信息管理','医学信息工程']
				}
			});
		</script>
	</body>
</html>

 

v-on补充

ps:我们可以通过回车键来绑定事件,还可以进行参数传递,具体如下代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>第一个Vue程序</title>
		<!-- 开发环境版本,包含了有帮助的命令行警告-->
		<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
	</head>
	<body>
		<div id="app">
			<input type="button" value="点击事件" @click="cclick('yangchaoyi')"/>
			<input type="text" @keyup.enter="hello" />
		</div>
		<script type="text/javascript">
			var app = new Vue({
				el: '#app',
				methods:{
					cclick:function(p1){
						alert('你好! '+p1);
					},
					hello:function(){
						alert('Hello');
					}
				}
			});
		</script>
	</body>
</html>

 

v-model指令

  •  获取和设置表单元素的值(双向数据绑定)

  •  v-model指令的作用是便捷的设置和获取表单元素的值

  •  绑定的数据会和表单元素相关联

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>第一个Vue程序</title>
		<!-- 开发环境版本,包含了有帮助的命令行警告-->
		<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
	</head>
	<body>
		<div id="app">
			<input type="button" @click="setMessage" value="设置message值" />
			<input type="text" v-model="message" @keyup.enter="getMessage">
			<h3>{{message}}</h3>
		</div>
		<script type="text/javascript">
			var app = new Vue({
				el: '#app',
				data:{
					message:'一百个Chocolate'
				},
				methods:{
					getMessage:function(){
						alert(this.message);
					},
					setMessage:function(){
						this.message="你好 Vue !";
					}
				}
			});
		</script>
		
	</body>
</html>

 

 

 

【四轴飞行器】非线性三自由度四轴飞行器模拟器研究(Matlab代码实现)内容概要:本文围绕非线性三自由度四轴飞行器模拟器的研究展开,重点介绍基于Matlab代码实现的四轴飞行器动力学建模与仿真方法。研究构建了考虑非线性特性的飞行器数学模型,涵盖姿态动力学与运动学方程,实现了三自由度(滚转、俯仰、偏航)的精确模拟。文中详细阐述了系统建模过程、控制算法设计思路及仿真结果分析,帮助读者深入理解四轴飞行器的飞行动力学特性与控制机制;同时,该模拟器可用于算法验证、控制器设计与教学实验。; 适合人群:具备一定自动控制理论基础和Matlab编程能力的高校学生、科研人员及无人机相关领域的工程技术人员,尤其适合从事飞行器建模、控制算法开发的研究生和初级研究人员。; 使用场景及目标:①用于四轴飞行器非线性动力学特性的学习与仿真验证;②作为控制器(如PID、LQR、MPC等)设计与测试的仿真平台;③支持无人机控制系统教学与科研项目开发,提升对姿态控制与系统仿真的理解。; 阅读建议:建议读者结合Matlab代码逐模块分析,重点关注动力学方程的推导与实现方式,动手运行并调试仿真程序,以加深对飞行器姿态控制过程的理解。同时可扩展为六自由度模型或加入外部干扰以增强仿真真实性。
基于分布式模型预测控制DMPC的多智能体点对点过渡轨迹生成研究(Matlab代码实现)内容概要:本文围绕“基于分布式模型预测控制(DMPC)的多智能体点对点过渡轨迹生成研究”展开,重点介绍如何利用DMPC方法实现多智能体系统在复杂环境下的协同轨迹规划与控制。文中结合Matlab代码实现,详细阐述了DMPC的基本原理、数学建模过程以及在多智能体系统中的具体应用,涵盖点对点转移、避障处理、状态约束与通信拓扑等关键技术环节。研究强调算法的分布式特性,提升系统的可扩展性与鲁棒性,适用于多无人机、无人车编队等场景。同时,文档列举了大量相关科研方向与代码资源,展示了DMPC在路径规划、协同控制、电力系统、信号处理等多领域的广泛应用。; 适合人群:具备一定自动化、控制理论或机器人学基础的研究生、科研人员及从事智能系统开发的工程技术人员;熟悉Matlab/Simulink仿真环境,对多智能体协同控制、优化算法有一定兴趣或研究需求的人员。; 使用场景及目标:①用于多智能体系统的轨迹生成与协同控制研究,如无人机集群、无人驾驶车队等;②作为DMPC算法学习与仿真实践的参考资料,帮助理解分布式优化与模型预测控制的结合机制;③支撑科研论文复现、毕业设计或项目开发中的算法验证与性能对比。; 阅读建议:建议读者结合提供的Matlab代码进行实践操作,重点关注DMPC的优化建模、约束处理与信息交互机制;按文档结构逐步学习,同时参考文中提及的路径规划、协同控制等相关案例,加深对分布式控制系统的整体理解。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值