Vue的详细教程--基础语法【上】

🥳🥳Welcome Huihui's Code World ! !🥳🥳

接下来看看由辉辉所写的关于Vue的相关操作吧

一.插值

1.文本

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>插值</title><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script></head><body><!-- 定义边界 --><div id="app"><h1>文本</h1>{{content1}}</div></body><script type="text/javascript">// 构建vue实例 绑定边界	new Vue({el:'#app',data(){return{content1:'我是天才' ,content2 :'<spancstyle="color:red;">我是天才</span>' }}})</script></body>
</html>

2.html

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>插值</title><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script></head><body><!-- 定义边界 --><div id="app"><h1>文本</h1>{{content1}}<h1>html</h1><h2 v-html="content2"></h2></div></body><script type="text/javascript">// 构建vue实例 绑定边界	new Vue({el:'#app',data(){return{content1:'我是天才' ,content2 :'<span style="color:red;">我是天才</span>' }},methods: {},})</script></body>
</html>

注意!!!

3.属性&class绑定&style绑定

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>插值</title><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script></head><body><style>.fs{font-size: 38px;}</style><!-- 定义边界 --><div id="app"><h1>class</h1><h2 :class="content3 " v-html="content2"></h2></div></body><script type="text/javascript">// 构建vue实例 绑定边界	new Vue({el:'#app',data(){return{content2 :'<span style="color:red;">我是天才</span>' ,content3 :'fs' ,}},methods: {},})</script></body>
</html>

4.表达式

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>插值</title><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script></head><body><style>.fs{font-size: 100px;}</style><!-- 定义边界 --><div id="app"><h1>表达式</h1>{{content4+2}}</br>{{content5.substr(0,4)}}</br><input v-model="content6" />{{content6==1 ?'是的':'不细啊'}}</div></body><script type="text/javascript">// 构建vue实例 绑定边界	new Vue({el:'#app',data(){return{content4 :5, content5 :'我是天才的女人', content6:1}},methods: {},})</script></body>
</html>

二.指令

1.v-if&v-else&v-else-if

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>指令</title><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script></head><body><!-- 定义边界 --><div id="app"><h1>v-if...</h1><input v-model="score"/><br/><b v-if="score<60">情商低</b><b v-else-if="score>60 && score<70">情商忽上忽下</b><b v-else-if="score>70 && score<80">情商一般</b><b v-else-if="score>80 && score<90">中等情商</b><b v-else=" ">高情商</b></div></body><script type="text/javascript">// 构建vue实例 绑定边界	new Vue({el:'#app',data(){return{score:69,}},methods: {},})</script></body>
</html>

2.v-show

3.v-for

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>指令</title><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script></head><body><!-- 定义边界 --><div id="app"><h1>v-if...</h1><input v-model="score"/><br/><b v-if="score<60">情商低</b><b v-else-if="score>=60 && score<=70">情商忽上忽下</b><b v-else-if="score>70 && score<=80">情商一般</b><b v-else-if="score>80 && score<=90">中等情商</b><b v-else=" ">高情商</b><h1>v-if和v-show的区别</h1><b v-if="ifshow">if</b><b v-show="ifshow">show</b><h1>v-for</h1><i v-for="a in arr">{{a}} &nbsp;</i><br /><i v-for="d in dogs">{{d.name}} &nbsp;</i><br /><i v-for="i,d in dogs">{{i}} &nbsp;</i><br /><!-- 下拉框 --><select><option v-for="h in hobby" :value="h.id">{{h.name}}</option></select><br /><!-- 复选框 --><div v-for="h in hobby"><input type="checkbox" name="hobby" value="h.id"/>{{h.name}}</div></div></body><script type="text/javascript">// 构建vue实例 绑定边界	new Vue({el:'#app',data(){return{score:69,ifshow:false,arr:[1,3,5,7,9],dogs:[{id:1,name:'夏威',},{id:2,name:'xw',},{id:3,name:'小威威',},{id:4,name:'夏威夷',}],hobby:[{id:1,name:'打夏威',},{id:2,name:'爱xw',},{id:3,name:'亲小威威',},{id:4,name:'去夏威夷',}],}},methods: {},})</script></body>
</html>

三.动态参数

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>过滤器</title><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script></head><!-- 定义边界 --><div id="app"><h1>动态参数</h1><input v-model="evname" /><button v-on:[evname]="test">click</button></div><script type="text/javascript">// 构建vue实例 绑定边界	new Vue({el:'#app',data(){return{evname:'click'};},methods: {test(){alert("你再点一下!!!!");}}})</script>
</html>

四.过滤器

1.局部过滤器

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>过滤器</title><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script></head><!-- 定义边界 --><div id="app"><h1>动态参数</h1><input v-model="evname" /><button v-on:[evname]="test">click</button><h1>局部过滤器</h1>{{content}}<br />{{content | filter1}}<br /><hr />{{content}}<br />{{content | filter1 | filter2}}<br /><h1>过滤器传参</h1>{{content | filter3(4,9)}}<br /><hr /></div><script type="text/javascript">// 构建vue实例 绑定边界	new Vue({el:'#app',filters:{'filter1':function(f){return f.substring(0,6);},'filter2':function(f){return f.substring(0,4);},'filter3':function(f,s,e){return f.substring(s,e);}},data(){return{content:'红红火火恍恍惚惚',time:new Date()};},methods: {test(){alert("你再点一下!!!!");}}})</script>
</html>

2.全局过滤器

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>过滤器</title><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script><script  src="js/date.js" type="text/javascript" ></script></head><!-- 定义边界 --><div id="app"><h1>动态参数</h1><input v-model="evname" /><button v-on:[evname]="test">click</button><h1>全局过滤器</h1>{{time}}<br />{{time | all }}</div><script type="text/javascript">// 全局过滤器Vue.filter('all', function(value) {return fmtDate(value);});// 构建vue实例 绑定边界	new Vue({el:'#app',data(){return{content:'红红火火恍恍惚惚',time:new Date()};},methods: {test(){alert("你再点一下!!!!");}}})</script>
</html>

五.计算属性&监听属性

1.计算属性

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>计算属性&监听属性</title><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script></head><body><!-- 定义边界 --><div id="app"><h1>计算属性</h1>单价:<input  v-model="price"/>数量:<input  v-model="num"/>小计:{{sum}}</div><script type="text/javascript">// 构建vue实例 绑定边界	new Vue({el:'#app',data(){return{price:79,num:10,}},computed:{sum:function(){return this.price * this.num}},methods: {},})</script></body>
</html>

2.监听属性

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>计算属性&监听属性</title><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script></head><body><!-- 定义边界 --><div id="app"><h1>监听属性</h1>千米:<input  v-model="km"/>米:<input  v-model="m"/></div><script type="text/javascript">// 构建vue实例 绑定边界	new Vue({el:'#app',data(){return{m:1000,km:1}},watch:{km:function(v){//v是千米this.m=parseInt(v)*1000},m:function(v){//v是米this.km=parseInt(v)/1000}},methods: {},})</script></body>
</html>

 六.购物车案例

效果

代码

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.min.js"></script>
<title>购物车</title>
<style>.cart-title {color: white;font-size: 24px;margin-bottom: 20px;
}.cart-items {display: grid;grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));gap: 20px;
}.cart-item {background-color: white;padding: 10px;border-radius: 5px;
}.item-image {width: 100%;height: auto;
}.item-name {margin-top: 10px;font-size: 18px;
}.item-price {font-size: 16px;color: grey;
}.item-quantity {display: flex;align-items: center;
}.quantity-label {margin-right: 5px;
}.quantity-button {cursor: pointer;background-color: #eee;padding: 5px;border: none;border-radius: 3px;
}.subtotal {font-size: 16px;color: grey;margin-top: 5px;
}.total {font-size: 20px;margin-top: 10px;
}th, td {padding: 8px;text-align: center;}
</style>
</head>
<body>
<div id="app"><div class="cart-container"><h1 class="cart-title">购物车</h1><table width="100%" border="0;"  cellspacing="0" cellpadding="0"><thead><tr><th>商品</th><th>数量</th><th>单价</th><th>小计</th></tr></thead><tbody><tr v-for="item in items" :key="item.id"><!-- 用到了v-for以及属性绑定 --><td ><img :src="item.image" style="width: 64px; height: 64px;" alt="商品图片"><h3 class="item-name">{{ item.name }}</h3></td><td class="item-quantity"><button @click="updateQuantity(item, -1)">-</button><!-- 事件绑定 --><span class="quantity-label">{{ item.quantity }}</span><button @click="updateQuantity(item, 1)">+</button></td><td class="item-price">{{ item.price }}</td><td><p class="subtotal">{{ calculateSubtotal(item) }}</p></td></tr></tbody><tfoot><tr><td colspan="3"></td><td><p class="total" colspan="4" sty>总计{{ calculateTotal() }}</p></td></tr></tfoot></table></div>
</div><script>
new Vue({el: '#app',data: {items: [{ id: 1, name: '商品1', price: '¥199', image: 'img/美妆类3.jpg ', quantity: 1 },{ id: 2, name: '商品2', price: '¥299', image: 'img/美妆类5.jpg', quantity: 1 },{ id: 3, name: '商品3', price: '¥399', image: 'img/美妆类7.jpg', quantity: 1 },]},methods: {updateQuantity(item, amount) {item.quantity += amount;},calculateSubtotal(item) {return '¥' + (parseFloat(item.price.slice(1)) * item.quantity).toFixed(2);},calculateTotal() {let total = 0;for (let item of this.items) {total += parseFloat(item.price.slice(1)) * item.quantity;}return '¥' + total.toFixed(2);}}
});
</script>
</body>
</html>

 好啦,今天的分享就到这了,希望能够帮到你呢!😊😊 

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python爬虫爬取电影数据并做可视化

思路&#xff1a; 1、发送请求&#xff0c;解析html里面的数据 2、保存到csv文件 3、数据处理 4、数据可视化 需要用到的库&#xff1a; import requests,csv #请求库和保存库 import pandas as pd #读取csv文件以及操作数据 from lxml import etree #解析html库 from …

element 搜索框静态查询

效果图 代码块 <template><div><!-- 1.产品搜索 --><div class"header"><div class"from"><el-form :inline"true" :model"formInline" class"demo-form-inline"><el-form-item l…

Vue复选框批量删除示例

Vue复选框批量删除 通过使用v-model指令绑定单个复选框 例如<input type"checkbox" id"checkbox" v-model"checked"> 而本次我们要做的示例大致是这样的&#xff0c;首先可以增加内容&#xff0c;然后通过勾选来进行单独或者批量删除&…

[计算机入门] 电源选项设置

3.10 电源选项设置 有时候我们的电脑一段时间没有用&#xff0c;会自己关掉屏幕或者直接睡眠&#xff0c;这是电源选项没有设置好导致的。 1、打开控制面板&#xff0c;打开其中的电源选项 2、点击左侧上方的选择关闭显示器的时间 3、进入到编辑计划设置界面&#xff0c;在…

【Vue】MVVM模型还没懂嘛

hello&#xff0c;我是小索奇&#xff0c;精心制作的Vue教程持续更新哈&#xff0c;想要学习&巩固&避坑就一起学习叭~ MVVM 模型 Vue虽然没有完全遵循MVVM模型&#xff0c;但Vue的设计也收到了它的启发在文档中也会使用VM&#xff08;ViewModel的缩写&#xff09;这个变…

安防电源芯片有哪些-42v转5v芯片

安防电源芯片有多种种类和型号&#xff0c;以下是一些常见的安防电源芯片&#xff1a; 1. 电源管理芯片&#xff08;Power Management IC&#xff0c;PMIC&#xff09;&#xff1a;这些芯片用于管理和控制安防系统的电源供应&#xff0c;包括电压调整、电流控制、电池管理等功…

全网多种方法解决idea中报出的Cannot find declaration to go to的问题

文章目录 1. 发现错误2. 分析问题3. 解决错误4. 解决该错误的其他方法4.1 其他方法14.2 其他方法24.3 其他方法34.4 其他方法44.5 解决方法54.6 解决方法6 5. 文章总结 1. 发现错误 今早下载一新项目&#xff0c;打开之后&#xff0c;点击对应的代码时&#xff0c;却报出如下错…

thrift的简单使用

写在前面 本文一起看下一种由facebook出品的rpc框架thrift。 源码 。 1&#xff1a;开发步骤 1:编写thrift idl文件 2&#xff1a;根据thrift idl文件生成java模板代码 3&#xff1a;继承模板代码的*.Iface接口给出server的具体服务实现 4&#xff1a;使用模板的HelloWorldSe…

Leetcode: 645.错误的集合 题解【超详细】

题目 集合 s 包含从 1 到 n 的整数。不幸的是&#xff0c;因为数据错误&#xff0c;导致集合里面某一个数字复制了成了集合里面的另外一个数字的值&#xff0c;导致集合 丢失了一个数字 并且 有一个数字重复 。 给定一个数组 nums 代表了集合 S 发生错误后的结果。 请你找出重复…

Redis模块一:缓存简介

目录 缓存的定义 应用 生活案例 程序中的缓存 缓存优点 缓存的定义 缓存是⼀个高速数据交换的存储器&#xff0c;使用它可以快速的访问和操作数据。 应用 1.CPU缓存&#xff1a;CPU缓存是位于CPU和内存之间的临时存储器&#xff0c;它的容量通常远小于内存&#xff0…

微信小程序云开发手搓微标提示,逻辑思路记录及代码实现

目录 写前小叙 功能需求背景 首页js的逻辑思路第一部分 发布公告js逻辑 首页js显示“新”公告思路实现 首页js关闭“新”公告思路实现 管理员“已阅读”js逻辑 首页js显示“新”邮件思路实现 首页js关闭“新”邮件思路实现 写前小叙 今儿凌晨&#xff0c;我又是一个人…

综合管廊安全监测,助力市政管廊智能化管理

综合管廊是一种集管线维护、建设、管理于一体的地下综合通道&#xff0c;可以将电力、通讯、燃气、供热、供水等工程管线集于一体&#xff0c;综合管廊对于城市建设具有重要意义&#xff0c;可以防止管线破裂&#xff0c;杜绝反复开挖路面&#xff0c;有效缓解交通拥堵&#xf…

强化历程7-排序算法(2023.9.12)

此笔记学习图片来自于如下网址 1https://www.west999.com/info/html/chengxusheji/Javajishu/20190217/4612849.html 文章目录 强化历程7-排序算法1 冒泡排序(交换排序)2 选择排序3 直接插入排序4 希尔排序5 归并排序6 快速排序7 堆排序8 计数排序 强化历程7-排序算法 1 冒泡排…

商业综合体AI+视频安防监控与智能监管解决方案

一、方案背景 商业综合体需要具备更好的品质和环境才能吸引更多客流&#xff0c;如何有效地进行内部管理、外部引流&#xff0c;是综合体管理人员思考的重点。 传统的视频监控需要靠人盯牢屏幕或者发生报警后通过查看录像&#xff0c;才能找到意外事件相关人员与起因&#xf…

4G模块驱动移植

一、4G模块概述 1、调试的模块型号是广和通的 NL668-EAU-00-M.2。 2、使用的接口是 M.2 Key-B。实际只用到了M2里的USB接口。 调试过程 以QMI_WWAN号方式进行说明&#xff0c;其他拨号方式也试过。最后以QMI_WWAN方式调通了&#xff0c;拨号成功了。 其他拨号方式因为现有文档…

通过Power Platform自定义D365CE业务需求 - 1. Microsoft Power Apps 简介

Microsoft Power Apps是一个趋势性的、无代码和无代码的商业应用程序开发平台,配有一套应用程序、服务和连接器。其数据平台为构建适合任何业务需求的自定义业务应用程序提供了快速开发环境。随着无代码、少代码应用程序开发的引入,任何人都可以快速构建低代码应用程序,并与…

linux系统报“INFO: task java:xxx blocked for more than 120 seconds.”解决办法

1、问题描述 linux系统&#xff0c;输入dmesg -T&#xff0c;报“INFO: task java:xxx blocked for more than 120 seconds.”&#xff0c;如下 一般情况下&#xff0c;linux会把可用内存的40%的空间作为文件系统的缓存。当缓存快满时&#xff0c;文件系统将缓存中的数据整体同…

安卓系列机型 另类体验第三方系统 DSU操作步骤解析 不影响主系统开启第二系统

dsu loader即 动态系统更新&#xff0c;可以在使用动态分区的安卓设备上&#xff0c;不影响原来系统的同时安装一个副系统&#xff0c;用于体验最新的原生安卓系统。可以不影响主系统的基础上体验其他gsi第三方。DSU 依赖于 Android 动态分区功能&#xff0c;并要求 GSI 作为可…

VRTK4⭐四.和 UI 元素交互

文章目录 &#x1f7e5; 安装Tilia Unity.UI&#x1f7e7; 配置射线与UI交互器1️⃣ 配置直线射线2️⃣ 配置UI交互器 &#x1f7e8; 配置UI1️⃣ 更新EventSystem2️⃣ 进行Canvas设置 我们要实现的功能: 右手触摸到圆盘:显示直线射线 右手圆盘键按下:与选中UI交互 &#x1f7…

分类散点图 stripplot() 加辅助线axhline() 多图合一

分类散点图 stripplot 加辅助线axhline 多图合一 效果图代码 画图没有什么可说的&#xff0c;直接上图 效果图 代码 # 绘制图&#xff0c; 查看是否数值在阈值上 plt.figure(figsize(30, 18)) n 0 for header, value_list in info_dict.items():ref_value_list ref_info_dic…