vue基础语法(上)

news/2024/5/20 15:30:37/文章来源:https://blog.csdn.net/m0_62528678/article/details/126668391

目录

一、插值

1、文本

2、html

3、属性

4、表达式

5、class绑定

6、style绑定

二、指令

1、核心指令

注:v-show和v-if区别

三、过滤器

1、全局过滤器

2、局部过滤器

四、计算属性与监听属性

1、计算属性

2、监听属性

3、计算属性和监听属性的区别 


一、插值

1、文本

          {{msg}}

2、html

          使用v-html指令用于输出html代码          

3、属性

          HTML属性中的值应使用v-bind指令

4、表达式

          Vue提供了完全的JavaScript表达式支持

          {{str.substr(0,6).toUpperCase()}}

          {{ number + 1 }}

          {{ ok ? 'YES' : 'NO' }}

          <li v-bind:id="'list-' + id">我的Id是js动态生成的</li>

5、class绑定

  使用方式:v-bind:class="expression"

  expression的类型:字符串、数组、对象

6、style绑定

  v-bind:style="expression"

  expression的类型:字符串、数组、对象

案例

<!DOCTYPE html>
<html><head><meta charset="utf-8"><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script><title></title></head><body><div id="app">{{msg}}<span v-html="htmlstr"></span><p>vue中的属性</p><a v-bind:href="hrefstr">百度一下</a><input :value="valuestr"/><p>表达式</p>{{str.substr(0,6).toUpperCase()}}<br />{{ number + 1 }}<br />{{ ok ? 'YES' : 'NO' }}<br /><span :id="'goods_'+id">xx</span></div></body><script type="text/javascript">new Vue({el:"#app",data(){return{msg:'hhhhhh vue',htmlstr:'html代码',hrefstr:'http://www.baidu.com',valuestr:'2223',str:'我学的java语言',number:11,ok:false,id:1};}})</script>
</html>

 

二、指令

 指的是带有“v-”前缀的特殊属性

1、核心指令

v-if|v-else|v-else-if:根据其后表达式的bool值进行判断是否渲染该元素

他们只能是兄弟元素

v-else-if上一个兄弟元素必须是v-if

v-else上一个兄弟元素必须是v-if或者是v-else-if

  v-show:与v-if类似,只是会渲染其身后表达式为false的元素,而且会给这样的元素添加css代码:style="display:none"

注:v-show和v-if区别

v-show会显示,只是加上了“style="display:none"”,而v-if不会显示

 

  v-for:类似JS的遍历,

 遍历数组: v-for="item in items", items是数组,item为数组中的数组元素

 遍历对象: v-for="(value,key,index) in stu", value属性值,key属性名,index下标 

案例

<!DOCTYPE html>
<html><head><meta charset="utf-8"><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script><title></title></head><body><div id="pp"><p>v-if|v-else|v-else-if</p>分数:<input v-model="score" />评价:<span v-if="score>80">优秀</span><span v-else-if="score>60">良好</span><span v-else="score<60">差</span><p>v-show</p><span v-show="score>90">v-show-是否显示</span><span v-if="score>90">v-if-是否显示</span><p>v-for</p><select v-model="hobbySelected"><option v-for="h in hobby" :value="h.id">{{h.name}}</option></select><div v-for="h in hobby"><input :value="h.id" type=checkbox />{{h.name}}</div></div></body><script type="text/javascript">new Vue({el: '#pp',data() {return {score: 21,hobby: [{id: "1",name: "唱歌"},{id: "2",name: "跳舞"},{id: "3",name: "篮球"}],hobbySelected: 1};}})</script>
</html>

  

三、过滤器

1、全局过滤器

Vue.filter('filterName', function (value) {

 // value 表示要过滤的内容

});

2、局部过滤器

new Vue({

 filters:{'filterName':function(value){}}

});

vue允许你自定义过滤器,被用作一些常见的文本格式化,格式如下:

<!-- 在两个大括号中 -->

{{ name | capitalize }}

<!-- 在 v-bind 指令中 -->

<div v-bind:id="rawId | formatId"></div>

注1:过滤器函数接受表达式的值作为第一个参数

注2:过滤器可以串联     

{{ message | filterA | filterB }}

注3:过滤器是JavaScript函数,因此可以接受参数:

{{ message | filterA('arg1', arg2) }}

注4:js定义一个类

function Stu(){};

Stu.prototype.add(a,b){};//添加一个新的实例方法

Stu.update(a,b){};//添加一个新的类方法

<!DOCTYPE html>
<html><head><meta charset="utf-8"><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script><title></title></head><body><div id="bpp">{{msg|all}}<br />{{msg|single}}<br />{{msg|all|single}}<br />{{msg|param(2,5)}}</div></body><script type="text/javascript">// 全局过滤器Vue.filter('all', function(value) {return value.substring(1, 4);});// 绑定边界	ES6具体体现new Vue({el: '#bpp',data() {return {msg:"abcdef"};},methods: {handle() {alert("触发事件");}},filters:{'single':function(val){return val.substring(2,3);},'param':function(val,start,end){return val.substring(start,end);}}})</script>
</html>

四、计算属性与监听属性

1、计算属性

   计算属性可用于快速计算视图(View)中显示的属性。这些计算将被缓存,并且只在需要时更新

   computed:{}

2、监听属性

   监听属性 watch,我们可以通过 watch 来响应数据的变化

   watch:{}

<!DOCTYPE html>
<html><head><meta charset="utf-8"><script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.10/vue.js"></script><title></title></head><body><!-- 定义边界 --><div id="app"><p>计算属性</p><table border="1" style="width: 600px;height: 300px;"><tr><td>物品</td><td>单价</td><td>数量</td><td>小计</td></tr><tr><td>帽子</td><td>{{maoziDanjia}}</td><td><input v-model="maozi" /></td><td>{{maoziTotal}}</td></tr><tr><td>衣服</td><td>{{yifuDanjia}}</td><td><input v-model="yifu" /></td><td>{{yifuTotal}}</td></tr><tr><td>裤子</td><td>{{kuziDanjia}}</td><td><input v-model="kuzi" /></td><td>{{kuziTotal}}</td></tr><tr><td>总价</td><td colspan="3">{{total}}</td></tr></table><p>监听属性</p>千米:<input v-model="km" />米:<input v-model="m" /></div></body><script type="text/javascript">// 全局过滤器Vue.filter('all', function(value) {return value.substring(1, 4);});// 绑定边界	ES6具体体现new Vue({el: '#app',data() {return {maoziDanjia: 300,yifuDanjia: 1300,kuziDanjia: 2200,maozi: 1,yifu: 1,kuzi: 1,km: 2,m: 2000};},methods: {handle() {alert("触发事件");}},computed: {maoziTotal() {return this.maoziDanjia * this.maozi;},yifuTotal() {return this.yifuDanjia * this.yifu;},kuziTotal() {return this.kuziDanjia * this.kuzi;},total() {return this.maoziTotal + this.yifuTotal + this.kuziTotal;}},watch: {// v指的是m变量m: function(v) {this.km = parseInt(v) / 1000;},// v指的是km变量km: function(v) {this.m = parseInt(v) * 1000;}}})</script>
</html>

 3、计算属性和监听属性的区别 

computed用来监控自己定义的变量,该变量不在data里面声明,直接在computed里面定义,然后就可以在页面上进行双向数据绑定展示出结果或者用作其他处理;
computed比较适合对多个变量或者对象进行处理后返回一个结果值,也就是数多个变量中的某一个值发生了变化则我们监控的这个值也就会发生变化,

与watch之间的区别:
watch主要用于监控vue实例的变化,它监控的变量当然必须在data里面声明才可以,它可以监控一个变量,也可以是一个对象

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

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

相关文章

李沐d2l(十一)--锚框

文章目录一、概念二、代码1 生成锚框2 IoU(交互比)3 将真实边界框分配给锚框4 标记类和偏移5 应用逆偏移变换来返回预测的边界框坐标6 nms7 将非极大值抑制应用于预测边界框一、概念 在目标检测算法中&#xff0c;通常会在输入图像中采样大量的区域&#xff08;生成多个边缘框&…

ELASTICSEARCH快速入门

1. ELASTICSEARCH 1、安装elastic searchdokcer中安装elastic search (1)下载ealastic search和kibana docker pull elasticsearch:7.6.2docker pull kibana:7.6.2 (2)配置 mkdir -p /mydata/elasticsearch/config 创建目录mkdir -p /mydata/elasticsearch/dataecho "…

fastapi+mongo+qlib:体系化构建AI量化投研平台

百天计划之第34篇&#xff0c;关于“AI量化投资研究平台”建设。 从今天开始要开始一条主线——就是开始搭建整个投研平台。 如果说8月开始是知识点的梳理&#xff0c;一些基础技术的准备&#xff08;以qlib和机器学习为核心&#xff09;&#xff0c;9月开始重点是“以解决真…

.NET Entity FrameWork 总结 ,在项目中用处个人感觉不大。适合初级用用,不涉及到与数据库通信。

更新数据 第一种&#xff1a; 先从数据库中取出数据&#xff0c;然后再更新字段。效率较低&#xff0c;需要2次数据库操作&#xff1b; Entities&#xff1a;就是EF实体数据模型 using (var db new Entities()) { var data db.Member.Find(5); data.Name “new name”; db.…

基于Springboot+vue的玩具销售商城网站 elementui

爱玩儿是所有孩子的天性。尤其是在婴幼儿阶段。选择一个好的玩具&#xff0c;不仅能够让孩子玩儿的开心&#xff0c;而且有助于孩子智力的开发。很多家长在选择玩具的时候&#xff0c;不知道选择什么样的玩具。且当前玩具市场的玩具鱼目混杂&#xff0c;种类繁多&#xff0c;而…

cmake和makefile区别和cmake指定编译器(cmake -G)

一 cmake和makefile区别 要说明区别,我们先要区分下面三类工具: 1.项目构建生成工具 首先cmake是项目构建生成工具,cmake的代码可以与平台系统和编译器无关。类似cmake的工具还有autotools、qmake、GN,其中qmake已基本由cmake替代。cmake下载地址 cmake.org.cn 也就是说cma…

1.初识jQuery

jQuery是JS的库&#xff0c;封装了原生JS的一些DOM方法&#xff0c;使JS用起来更方便 目录 1 下载jQuery 2 jQuery的基本使用方式 3 jQuery入口函数 1 下载jQuery jQuery官网 jQuery 点击这里进入下载页面&#xff0c;我当前的版本为 3.6.1&#xff0c;如果你想下载之…

2022极端高温!人工智能如何预测森林火灾?| 万物AI

&#x1f4a1; 作者&#xff1a;ShowMeAI编辑部 &#x1f4e2; 声明&#xff1a;版权所有&#xff0c;转载请联系平台与作者并注明出处 &#x1f4e2; 收藏ShowMeAI查看更多精彩内容 8月21日晚&#xff0c;重庆北碚区山火一路向国家级自然保护区缙云山方向蔓延。为守护家园&…

LabVIEW通过网络传输数据

LabVIEW通过网络传输数据 选择应用程序的联网功能时&#xff0c;最重要的因素是应用程序使用的通信模型。不同的通信模型具有不同的数据传输要求。下表列出了最常见的几种通信模型以及推荐功能。 通信模型 说明 范例 推荐联网功能 处理数据 传输最新数据&#xff0c;从一…

Vue模块语法上(插值指令过滤器计算属性-监听属性)

文章目录 一、插值 1&#xff09;文本 2&#xff09;html 3&#xff09;属性 4&#xff09;表达式 5&#xff09;class绑定 6&#xff09;style绑定 二、指令 1.v-if|v-else|v-else-if 2.v-show 3.v-for 4.v-bind 5.v-on 6.v-model 三、过滤器 全局过滤器 局部过滤器…

从零开始配置SSH密钥到github

最近电脑新环境&#xff0c;重新配置SSH 密钥链接GitHub 1 git安装 1.1 下载git 在官网下载git.exe 下载地址》 https://github.com/git-for-windows/git/releases/download/v2.37.3.windows.1/Git-2.37.3-64-bit.exe 1.2 安装git 双击运行程序&#xff0c;然后一直下一步…

for3.0测试题(必看)

for循环测试题:99乘法表11=112=2 22=413=3 23=6 33=914=4 24=8 34=12 44=1615=5 25=10 35=15 45=20 55=2516=6 26=12 36=18 46=24 56=30 66=3617=7 27=14 37=21 47=28 57=35 67=42 77=4918=8 28=16 38=24 48=32 58=40 68=48 78=56 88=6419=9 29=18 39=27 49=36 59=45 69=54 79…

彩虹女神跃长空,Go语言进阶之Go语言高性能Web框架Iris项目实战-用户系统EP03

前文再续&#xff0c;之前一篇我们已经配置好了数据库以及模板引擎&#xff0c;现在可以在逻辑层编写具体业务代码了&#xff0c;博客平台和大多数在线平台一样&#xff0c;都是基于用户账号体系来进行操作&#xff0c;所以我们需要针对用户表完成用户账号的CURD操作。 用户后…

Hadoop 3.x(入门)----【Hadoop概述】

Hadoop 3.x&#xff08;入门&#xff09;----【Hadoop概述】1. Hadoop是什么2. Hadoop发展历史&#xff08;了解&#xff09;3. Hadoop三大发行版本&#xff08;了解&#xff09;4. Hadoop优势&#xff08;4高&#xff09;5. Hadoop组成&#xff08;重点&#xff09;1. HDFS架构…

Express--获取URL中携带的查询参数、获取URL中的动态参数、获取URL中的动态参数

Express获取URL中携带的查询参数 通过req.query对象&#xff0c;可以访问到客户端查询字符串形式&#xff0c;发送给服务器参数 req.query默认是一个空对象客户端使用url的地址是?键值对&键值对(?namejs$age78)等这种查询字符串形式&#xff0c;发送到服务器的参数----…

Oracle P6 -SQLServer数据库乱码案例分享

此案例根据近几日根一盆友提到的问题分享总结 简单说下P6的基本参数 P6Version: Primavera P6 21.12.0Database: Microsoft SQLServer 2017Server : Windows Server 2016 问题描述&#xff1a; 在P6 Professional (桌面客户端) 中输入中文的内容&#xff0c;无论是EPS名称&a…

【云原生 • Kubernetes】kubernetes 核心技术 - 集群安全机制

本文导读一、集群安全机制概述1.认证2. 鉴权(授权)3. 准入控制二、RBAC 概述三、RBAC 角色绑定操作演示一、集群安全机制概述 要知道&#xff0c;访问 Kubernetes 集群必需要进行三个步骤&#xff0c;即&#xff1a; 认证鉴权(授权)准入控制 而这个访问过程均需经过 apiserver…

ArcGIS流域划分基础知识初学者课程

ArcGIS流域划分基础知识初学者课程 GIS 概念和 ArcGIS、ArcGIS Pro、ArcGIS Online 工具与分水岭划分示例简介 课程英文名&#xff1a;Learn the basics of GIS and use of ArcGIS softwar 此视频教程共5.0小时&#xff0c;中英双语字幕&#xff0c;画质清晰无水印&#xff…

Python QGIS 3自动化教程

Python QGIS 3自动化教程 将你的 QGIS 技能提升到一个新的水平 课程英文名&#xff1a;Automating QGIS 3.xx with Python 此视频教程共小时&#xff0c;中英双语字幕&#xff0c;画质清晰无水印&#xff0c;源码附件全 下载地址 百度网盘地址&#xff1a;https://pan.baid…

SpirngBoot+微服务SpringCloud——Eureka服务的注册(二)

一、Eureka注册中心 1.接续SpringCloud&#xff08;一&#xff09;中的实例。如果我们的user-server部署了多个实例&#xff0c;如图&#xff1a; order-service在发动远程调用的时候该如何得知user-service实例的ip地址和端口有多个user-service实例地址&#xff0c;order-…