vue模板语法

src目录文件说明:

1,数据绑定{{}}

数据绑定最常见的形式就是使用{{}}(双花括号)语法的文本插值

在template中使用{{}}文本插值语法中,设置一个变量,再在script中引入data函数,在return中进行数据绑定,返回变量的值

    <span>{{message}}</span>
<script>
export default {
  name: 'HelloWorld',
  data(){
    return{
      message: "学习Vue"
    }
  }
}
</script>

2,渲染HTML:v-html:

 {{}}只能够渲染普通文件,不能够识别HTML代码,要渲染HTML代码,需要使用  v-html   指令

  <p>使用双花括号来显示html{{msg}}</p>
  <p>使用v-html来渲染html <span v-html="msg"></span></p>
data(){
    return{
      message: "学习Vue",
      msg:"<a href='https://blog.csdn.net/qq_52655865?spm=1000.2115.3001.5343'>csdn:小趴菜学Java的首页</a>"
    }
  }

3,属性Attribute:v-bind:或者:

v-bind:用来设置成属性

v-bind:可以简写成 :

    <p v-bind:id="myId"></p>
    <p :id="myId"></p> 这两行代码的表示的意思一样
<script>
export default {
  name: 'HelloWorld',
  data(){
    return{
      myId:"10001"
    }
  }
}
</script>

 4,使用JavaScript表达式

    <p>id拼接上123:{{myId + 123}}</p>
    <p>{{flag ? "孙悟空" : "六耳猕猴"}}</p>
<script>
export default {
  name: 'HelloWorld',
  data(){
    return{
      myId:"10001",
      flag:true,
    }
  }
}
</script>

这些表达式都必须是单个表达式,如果不是单个表达式,则不会被识别出JS语法,比如以下都不会被识别成JS表达式。

 5,条件渲染:v-if,v-show

v-if 有条件的渲染某一块内容,这快内容为真,则显示内容,v-else则显示为假的内容

        <p v-if="flag">孙悟空</p>
        <p v-else>六耳猕猴</p>
 data(){
      return{
        flag: true,
      }
    }

v-show:也用于条件渲染

    <p v-show="flag">到底谁是真的</p>

v-show和v-if的区别:

v-if:是真正的条件渲染,如果v-if渲染的条件为假,则在页面显示的html中,则看不到v-if渲染的这段代码。就是说条件块内的子组件和事件监听器会进行有选择性的销毁和重建。

v-if也是有惰性的:如果在初始渲染条件为false,则什么都不干,直到有一次条件为true,才会进行渲染。

v-show:不论初始条件是否为真,都会进行渲染,可以在html中找到v-show渲染的模块,并且就只是简单的css的切换,就相当于css中的display 的none和block

一般来说:在条件切换过于频繁时,使用v-show较好,频繁的切换会产生较大的切换开销,而如果切换频率低,则使用v-if。

6,列表渲染:v-for

 <!-- 列表渲染 -->
    <ul >
      <li v-for="item in list">{{ item.id }},{{ item.title }}</li>
    </ul>
 list:[
        {
          id:1001,
          title:"小趴菜1号"
        },
        {
          id:1002,
          title:"小趴菜2号"
        },
        {
          id:1003,
          title:"小趴菜3号"
        },
      ]

vue就地渲染

 v-for就地渲染:使用v-for,如果在集合中新增了一条数据,那么vue就会只渲染新增的这条数据,不会从新渲染整个集合,提高性能。

但是要使用就地渲染,就需要给Vue一个提示,以便能够确定每一个节点的身份,从而重用旧元素和重新排列新元素,你需要提供一个唯一的key 给vue

<!-- 列表渲染 -->
    <ul >
      <li v-for="item in list" :key="item.id">{{ item.id }},{{ item.title }}</li>
    </ul>

如果集合中的数据没有唯一索引,则使用集合元素的下标作为key

<!-- 列表渲染 -->
    <ul >
      <li  v-for="(item,index) in list" :key="index">
        {{ item.id }},{{ item.title }}</li>
    </ul>

7,事件监听:v-on: 或者 @

可以采用@或者v-on来监听DOM事件,并在触发时,执行一些Javascript

    <!-- 事件处理 -->
    <button @click="current += 1">点击 current = {{current}}</button>
data(){
    return{  
        current: 1
    }
}

每点击一下,就会让current+1。

8,事件处理方法:methods:{ fun(){},}

methods和data平级

<!-- 事件处理方法 -->
    <button @click="fun">事件处理方法按钮</button>
 methods:{
    fun(){
      console.log("事件处理方法被点击");
    }
  }

可以通过点击事件来修改data中属性的值

  data(){
    return{
      message: "学习Vue",
    }
  }
 methods:{
    fun(){
      //在事件中改变data中数据的值,需要同this关键字来调用
      this.message = "点击了鼠标,学习了vue";
      console.log("事件处理方法被点击");
    }
  }

内敛处理器中的方法  或   事件传递参数 

data(){
  return{
    flag:true,
    message: "学习vue中"
      list:[
        {
          id:1001,
          title:"小趴菜1号"
        },
        {
          id:1002,
          title:"小趴菜2号"
        },
        {
          id:1003,
          title:"小趴菜3号"
        },
      ],
      current: 1
    }
}
<!-- 事件处理方法 -->
    <button @click="fun">事件处理方法按钮</button>
    <button @click="say('学习vueing')">学习vueing</button>
    <ul>
      <li @click="logName(name)" v-for="name in list" :key="name.id" >
        {{ name.title }}
      </li>
    </ul>
methods:{
    fun(){
      //在事件中改变data中数据的值,需要同this关键字来调用
      this.message = "点击了鼠标,学习了vue";
      console.log("事件处理方法被点击");
    },
    say(data){
      console.log(data);
    },
    logName(data){
      console.log(data);
    }
  }

9,表单输入绑定:v-model

可以使用v-model指令在表单中<input>,<textarea>及<select>元素上创建双向数据绑定,他会监听数据变化实时的更新数据。v-model是一种语法糖,在某种特定情况下进行数据处理。

<!-- 表单输入绑定,双向绑定 -->
    <input type="text" v-model="message"/>
    <p>{{message}}</p>

修饰符.lazy

在默认情况下,v-model会实时的更新表单中修改的数据,可以添加.lazy修饰符,在回车或者失去焦点后,执行,使用成为change事件进行同步。

    <input type="text" v-model.lazy="message"/>
    <p>{{message}}</p>

修饰符.trim:去空格

修饰符.number :将用户输入的数字转为number类型

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

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

相关文章

接口测试和性能测试有什么区别?我敢打赌你一定不知道

目录 一、什么是接口测试 二、接口测试原理 三、接口测试步骤 四、什么是性能测试 五、性能测试步骤 六、接口测试和性能测试的区别 一、什么是接口测试 接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点…

2023最全Python+Selenium环境搭建教程-你绝对想不到有这么简单!

还有视频版本结合项目实战介绍&#xff0c;轻松学习&#xff01; PythonSelenium自动化测试环境搭建Web自动化测试全套教程_哔哩哔哩_bilibiliPythonSelenium自动化测试环境搭建Web自动化测试全套教程共计180条视频&#xff0c;包括&#xff1a;1、Web自动化测试需求和挑战、2…

深度学习-Tensorflow使用Keras进行模型训练

本文以FasionMNIST/加州房价数据集为例&#xff0c;介绍KerasAPI进行分类问题/回归问题模型训练的方法Tensorflow版本Tensorflow和keara都需要2.0及以上版本import tensorflow as tf from tensorflow import keras print(tf.__version__) print(keras.__version__)分类MLP构建数…

AI_Papers周刊:第六期

CV - 计算机视觉 | ML - 机器学习 | RL - 强化学习 | NLP 自然语言处理 2023.03.13—2023.03.19 文摘词云 Top Papers Subjects: cs.CL 1.UPRISE: Universal Prompt Retrieval for Improving Zero-Shot Evaluation 标题&#xff1a;UPRISE&#xff1a;改进零样本评估…

要是早看到这篇文章,你起码少走3年弯路,20年老程序员的忠告

文章目录前言一、程序员的薪资是怎么样的&#xff1f;二、我现在的情况适合做程序员吗&#xff1f;三、大学期间到底应该学些什么&#xff1f;四、工作还是考研&#xff1f;五、总结前言 我是龙叔&#xff0c;一名工作了20多年的退休老程序员。 如果你在工作之前看到这篇文章…

【AI大比拼】文心一言 VS ChatGPT-4

摘要&#xff1a;本文将对比分析两款知名的 AI 对话引擎&#xff1a;文心一言和 OpenAI 的 ChatGPT&#xff0c;通过实际案例让大家对这两款对话引擎有更深入的了解&#xff0c;以便大家选择合适的 AI 对话引擎。 亲爱的 CSDN 朋友们&#xff0c;大家好&#xff01;近年来&…

libcurl库访问人工智能平台之人脸识别

一、前言上一篇文章我们调用libcurl库去访问了百度&#xff0c;访问的是http协议的百度云主页。那么现在我们要基于翔云人工智能平台来实现人脸识别&#xff0c;具体的操作大概就是我们在linux下调用libcurl库去访问翔云人工智能平台&#xff0c;然后实现我们想要的两张人脸图片…

FPGA纯verilog实现RIFFA的PCIE通信,提供工程源码和软件驱动

目录1、前言2、RIFFA简介RIFFA概述RIFFA架构RIFFA驱动3、vivado工程详解4、上板调试验证并演示5、福利&#xff1a;工程代码的获取1、前言 PCIE是目前速率很高的外部板卡与CPU通信的方案之一&#xff0c;广泛应用于电脑主板与外部板卡的通讯&#xff0c;PCIE协议极其复杂&…

【Linux】基本指令介绍

前言从今天开始&#xff0c;我们一起来学习Linux的相关知识&#xff0c;今天先来介绍怎么登录Linux&#xff0c;并且介绍一些Linux的基本指令。使用 XShell 远程登录 Linux很多同学的 Linux 启动进入图形化的桌面. 这个东西大家以后就可以忘记了. 以后的工作中 没有机会 使用图…

蓝桥杯刷题冲刺 | 倒计时21天

作者&#xff1a;指针不指南吗 专栏&#xff1a;蓝桥杯倒计时冲刺 &#x1f43e;马上就要蓝桥杯了&#xff0c;最后的这几天尤为重要&#xff0c;不可懈怠哦&#x1f43e; 文章目录1.迷宫1.迷宫 题目 链接&#xff1a; 迷宫 - 蓝桥云课 (lanqiao.cn) 本题为填空题&#xff0c;只…

Three.js——learn02

Three.js——learn02Three.js——learn02通过轨道控制器查看物体OrbitControls核心代码index2.htmlindex.cssindex2.jsresult添加辅助器1.坐标轴辅助器AxesHelper核心代码完整代码2.箭头辅助器ArrowHelper核心代码完整代码3.相机视锥体辅助器CameraHelper核心代码完整代码Three…

近期投简历、找日常实习的一些碎碎念(大二---测试岗)

嘿嘿嘿&#xff0c;我又回来了&#xff0c;相信不少兄弟已经发现我似乎已经断更了好久&#xff0c;哈哈&#xff0c;我是尝试去找实习&#xff0c;投简历面试去了。 先说一下背景。 目录 背景 求职进行中 简历 投递和沟通 收获和感受 背景 博主&#xff0c;大二软件工程…

Arthas工具的基本使用

介绍 Arthas 是Alibaba开源的Java诊断工具&#xff0c;深受开发者喜爱。在线排查问题&#xff0c;无需重启&#xff1b;动态跟踪Java代码&#xff1b;实时监控JVM状态。Arthas支持JDK 6&#xff0c;支持Linux/Mac/Windows&#xff0c;采用命令行交互模式&#xff0c;同时提供丰…

Python截图自动化工具

1、展示部分源码(写的比较乱&#xff0c;哈哈) 2、功能展示 1&#xff09;首页 2&#xff09;按钮截图(用于自动翻页) 3&#xff09;保存位置按钮(选择图片保存的位置) 4&#xff09;重复次数&#xff0c;就是要截取多少次 5&#xff09;定位截屏(截取的内容&#x…

[数据分析与可视化] Python绘制数据地图1-GeoPandas入门指北

本文主要介绍GeoPandas的基本使用方法&#xff0c;以绘制简单的地图。GeoPandas是一个Python开源项目&#xff0c;旨在提供丰富而简单的地理空间数据处理接口。GeoPandas扩展了Pandas的数据类型&#xff0c;并使用matplotlib进行绘图。GeoPandas官方仓库地址为&#xff1a;GeoP…

尚融宝06-ECMAScript基本介绍和使用

目录 一、ECMAScript 1、ECMA 2、ECMAScript 3、什么是 ECMA-262 4、ECMA-262 历史 5、ECMAScript 和 JavaScript 的关系 二、基本语法 1、let声明变量 2、const声明常量 3、解构赋值 4、模板字符串 5、声明对象简写 6、定义方法简写 7、参数的默认值 8、对象拓…

QT常用位置函数区别

目录1、引言2、实验代码3、位置函数3.1 x()3.2 y()3.3 frame()3.4 pos()3.5 geometry()3.6 width()3.7 height()3.8 rect()3.9 size()1、引言 QT有众多图形绘制函数&#xff0c;包括x()、y()、frame()、pos()、geometry()、width()、height()、rect()、size()&#xff0c;它们…

【Java学习笔记】多线程与线程池

多线程与线程池一、多线程安全与应用1、程序、进程与线程的关系2、创建多线程的三种方式&#xff08;1&#xff09;继承Thread类创建线程【不推荐】&#xff08;2&#xff09;实现Runnable接口创建线程&#xff08;3&#xff09;Callable接口创建线程3、线程的生命周期4、初识线…

基础入门 HTTP数据包Postman构造请求方法请求头修改状态码判断

文章目录数据-方法&头部&状态码请求requestResponse状态码案例-文件探针&登录爆破工具-Postman自构造使用数据-方法&头部&状态码 请求request 1、常规请求-Get 2、用户登录-Post •get&#xff1a;向特定资源发出请求&#xff08;请求指定页面信息&#x…

为什么这么NB?huatuo革命Unity热更新

最近huatuo(华佗)热更新解决方案火爆了unity开发圈,起初我觉得热更新嘛&#xff0c;不就是内置一个脚本解释器脚本语言开发&#xff0c;如xLua, ILRuntime, puerts。Huatuo又能玩出什么花样&#xff0c;凭什么会这么NB&#xff0c;引起了那么多程序员的关注与称赞呢&#xff1f…