Vue极简使用2

2023-11-04


安装教程的博文链接: Vue详细安装教程
Vue官方帮助文档: Vue帮助文档

Vue基础内容

模板语法

模板语法: js业务逻辑script ,结合模板template

解析文本

template中{{msg}}
script中 data(){ return{ msg:"传递的数据", msg2:"<h4>h2样式</h4>" } },

解析原始HTML

template中<p v-html="msg2"></p>
script中 data(){ return{ msg:"传递的数据", msg2:"<h4>h2样式</h4>" } },

在这里插入图片描述

在这里插入图片描述

动态属性

template中<div v-bind:class="activate">hello</div>
script中 data(){ return{ activate:'active' } },
在这里插入图片描述

模板语法使用限制

在我们的模板中,我们一直都只绑定简单的 property 键值。但实际上,对于所有的数据绑定,Vue.js 都提供了完全的 JavaScript 表达式支持。

有个限制就是,每个绑定都只能包含单个表达式

条件渲染

template中:

<p v-if="flag2">HelloWorld</p>
<p v-if="flag2">HelloWorld</p>

script中:

  data(){
    return{
      flag1:true,
      flag2:false,
    }
  },

在这里插入图片描述
template中

        <p v-if="flag1">条件1</p>
        <p v-else>条件2</p>

script中

  data(){
    return{
      flag1:true,
    }
  },

在这里插入图片描述
条件组
template中

        <template v-if="flag1">
          <p>1</p>
          <p>2</p>
          <p>3</p>
          <p>4</p>
          <p>5</p>
        </template>

script中

  data(){
    return{
      flag1:true,
    }
  },

在这里插入图片描述
v-show
template中:

    <div>
        <h3>条件渲染</h3>
        <div v-show="flag1">aaa</div>
    </div>

script中:

  data(){
    return{
      flag1:true,
    }
  },

在这里插入图片描述
template中

  <div>
        <h3>条件渲染</h3>
        <div v-show="flag1">aaa</div>
    </div>

script中

  data(){
    return{
      flag1:false,
    }
  },

在这里插入图片描述
区别
在这里插入图片描述

列表渲染、事件处理

列表渲染

v-for
template中

    <div>
        <h3>列表渲染</h3>
        <ul>
          <li v-for="item in result" :key="item.id">{{item.name}}</li>
        </ul>
    </div>

script中

  data(){
    return{
      result:[
        {
          id:1001,
          name:"小红"
        },
        {
          id:1002,
          name:"小明"
        },
        {
          id:1003,
          name:"小军"
        },
        {
          id:1004,
          name:"小杨"
        }
      ]
    }
  },

在这里插入图片描述
使用index
template中

    <div>
        <h3>列表渲染</h3>
        <ul>
          <li v-for="(item,index) in result" :key="index">{{item.name}}+{{index}}</li>
        </ul>
    </div>

script中

  data(){
    return{
      result:[
        {
          id:1001,
          name:"小红"
        },
        {
          id:1002,
          name:"小明"
        },
        {
          id:1003,
          name:"小军"
        },
        {
          id:1004,
          name:"小杨"
        }
      ]
    }
  },

在这里插入图片描述

事件处理

v-on
template中:

    <div>
        <h3>事件处理</h3>
        <button v-on:click="clickhendke">第一个按钮</button>
    </div>

script中:
methods承载事件函数

export default {
  name: 'App',
  data(){
    return{
    }
  },
  methods: {
    clickhendke(){
          console.log("hello");
    }
  },
  components: {
    HelloWorld
  }
}

在这里插入图片描述
v-on:click结合v-if完成文字的显示和隐藏
template中

    <div>
        <h3>事件处理</h3>
        <h4 v-if="flag">你好呀!!!!!!!</h4>
        <button v-on:click="clickhendke">第一个按钮</button>
    </div>

script中

export default {
  name: 'App',
  data(){
    return{
      flag:true,
    }
  },
  methods: {
    clickhendke(){
      this.flag=!(this.flag)
    }
  },
  components: {
    HelloWorld
  }
}

在这里插入图片描述在这里插入图片描述
所有data的属性可以直接用this来索引和修改。。。

事件传递参数:

template中

      <div>
        <h3>列表渲染+事件处理</h3>
        <ul>
          <li @click="clickhendle(item.text)" v-for="(item,index) in result" :key="index">{{item.name}}+{{index}}</li>
        </ul>
    </div>

script中

export default {
  name: 'App',
  data(){
    return{
      result:[
        {
          id:1001,
          name:"小红",
          text:"爱打球"
        },
        {
          id:1002,
          name:"小明",
          text:"爱打牌"
        },
        {
          id:1003,
          name:"小军",
          text:"爱打麻将"

        },
        {
          id:1004,
          name:"小杨",
          text:"爱弹琴"
        }
      ]
    }
  },
  methods: {
    clickhendle(data){
      console.log(data);
    }
  },
  components: {
    HelloWorld
  }
}

在这里插入图片描述

也可以使用event对象

  methods: {
    clickhendle(e){
      console.log(e);
    }
  },

在这里插入图片描述
在这里插入图片描述

修饰符

在这里插入图片描述

表单输入绑定、计算属性、样式处理

表单输入和绑定

template中

    <div>
        <h3>表单输入和绑定</h3>
        <input type="text" v-model="username">

        <p>输入的数据为:{{username}}</p>
        <button @click="clickhendle">获取输入数据</button>
    </div>

script中

export default {
  name: 'App',
  data(){
    return{
      username:"",
    }
  },
  methods: {
    clickhendle(){
      console.log(this.username)
    }
  },
  components: {
    HelloWorld
  }
}

在这里插入图片描述

修饰符

回车或者失去焦点后,页面才能读取到输入的数据
在template中

<input type="text" v-model.lazy="username">

在这里插入图片描述

计算属性和监听器

计算属性

template中

    <div>
        <h3>计算属性和监听器</h3>
        <p>{{message}}</p>
        <p>{{myMessage}}</p>
    </div>

script中
添加computed:

export default {
  name: 'App',
  data(){
    return{
      message : "hello",
      message2 :"aa"
    }
  },
  methods: {
    clickhendle(){

    }
  },
  computed: {
    myMessage(){
      this.message2 =this.message.length
      return this.message2;
    }
  },
  components: {
    HelloWorld
  }
}

在这里插入图片描述

监听器

template中

    <div>
        <input type="text" v-model="nick">

    </div>

script中
添加watch

export default {
  name: 'App',
  data(){
    return{
      nick:"初始值",
    }
  },
  methods: {
    clickhendle(){

    }
  },
  computed: {
    myMessage(){
    }
  },
  watch: {
    nick(oldvalue,newvalue){
      console.log(oldvalue+"---------"+newvalue)

    }
  },
  components: {
    HelloWorld
  }
}

在这里插入图片描述

class和style样式绑定

temple中

    <div>

        <p :class="{'active': true}">HelloWorld</p>
        <p :class="['a1','a2','a3']">HelloWorld</p>

    </div>

在这里插入图片描述

Vue组件详解

vue+回车快捷键生成模板:
在这里插入图片描述
唯一根元素:div
在这里插入图片描述

Vue路由配置

网络请求、跨域、封装

Vue状态管理

Vuex

核心概念

Vue核心插件应用

Swiper

ElementUI

Vue打包部署

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Vue极简使用2 的相关文章

  • 是否可以禁用特定 jQuery Ajax 调用的 Turbolinks 以防止页面刷新和滚动?

    我有一个 Rails 5 应用程序 非常想使用 Turbolinks 在应用程序中 有几个 PATCH ajax 调用 它们只是用新数据更新服务器 但不需要担心更新页面的状态 每当这些 ajax 请求返回时 Turbolinks 就会刷新页
  • 我可以从 HTTP 请求中找到无线接入点的 BSSID(MAC 地址)吗?

    假设有人在咖啡店里无线连接到互联网 并向 johnsveryownserver com 发送 HTTP 请求 服务器端 有什么方法可以确定我的MAC地址吗 无线接入点他们连接到什么 请注意 我对他们机器的 MAC 地址不感兴趣 如果我无法使
  • Ext JS - 如何滚动到文本区域的底部

    这是我下面的代码 如何滚动到文本区域的底部 它一定是类似的东西 Ext getCmp output setScrollPosition Ext getCmp output getScrollHeight 这是我的文本区域代码 var myW
  • VueJS 精确活动类

    我有一个使用 Router link 的菜单 当 Router link 被激活时 我想将类 Active 放在 li 上 ul class nav nav second level li li ul
  • 禁用 JavaScript 中的右键单击

    当我尝试禁用右键单击时 它不起作用 我尝试使用下面的代码 document onclick function e console log e button if e button 2 e preventDefault return fals
  • 何时不使用承诺[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 在阅读了数十篇关于 es6 Promise 有多伟大以及为什么我们应该实现它们的文章之后 我有这样的感觉 ALL我的 不平凡的 JavaScri
  • 响应式网格布局框架[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 创建 Cookie 时需要帮助

    我有一个名为yes和另一个名叫no
  • 在 MVC Razor 中的 C# 和 Javascript 之间共享常量

    我想在服务器上的 C 和客户端上的 Javascript 中都使用字符串常量 我将常量封装在 C 类中 namespace MyModel public static class Constants public const string
  • 如何记录返回的事件发射器

    如何记录所发出的事件stream返回于MyFunc 与 JSDoc MyFunc description param Object opts description return Stream description function My
  • 如何改变HTML5视频的播放速度?

    如何更改 HTML5 中的视频播放速度 我查过视频标签的属性 https www w3schools com html html5 video asp在 w3school 但无法做到这一点 根据这个网站 http www chipwreck
  • v-file-input .click() 不是函数

    我试图以编程方式触发 v file input 的 click 事件 因为它在 Vuetify 的文档中 但它显示一个错误this refs imagePicker click is not a function我在这里错过了什么吗 代码重
  • 如何清除WebGL中的矩形区域?

    WebGL 有一个clear清除整个表面的方法 清除表面的特定矩形的最佳方法是什么 例如 我想将一个从 50 50 开始的 100x100 像素框设置为全零 ARGB 0 0 0 0 我现在能想到的就是用一个写入零的片段着色器绘制一个四边形
  • React无限滚动scrollableTarget动态获取id?

    我在我的项目中使用react infinite scroll component 如何让scrollableTarget动态获取item id 我试过这样scrollableTarget item id 但它不起作用 必须与该 div 具有
  • Keycloak javascript 适配器 `keycloak.init` 加载 404 iframe

    我正在尝试使用 javascript 适配器将 Keycloak 集成到我的客户端应用程序keycloak js 但是 我似乎无法让它发挥作用 这是我的代码 const keycloak new Keycloak realm my real
  • 如何在 e2e AngularJS 测试中进行文件上传?

    在我的一种观点中 我有一个文件上传控件 它支持通过拖放或单击按钮后打开的标准文件对话框上传文件 How to do this in my e2e tests1 1 Just one of the two options will be en
  • ng-model 和值组合不适用于输入文本框

    我有两个输入文本框 我需要组合在两个文本框中输入的值并将其显示在第三个文本框中 如果我只使用value在第三个文本框中 Box 1
  • 需要js、d3 和 nvd3 集成

    我面临整合的问题要求 questions tagged requirejs with d3 questions tagged d3 and nvd3 questions tagged nvd3 我找到了一个使用 require 的简单解决方
  • 如何获取使用 .map 渲染的第一个元素的 ref?

    我需要在几行中显示视频 卡片 的缩略图 并重点关注第一个缩略图 我使用嵌套地图进行了显示 该代码基本上迭代视频数组并返回多行视频 我们如何关注第一个渲染的元素 我认为我们需要获得第一个要聚焦的元素的引用 但是我们如何在这里设置 ref 并在
  • 您如何看待引导模式触发器的相应回调?

    On 引导模态 http getbootstrap com javascript modals 我们知道我们可以为触发器绑定事件 例如show or hide using show shown hide hidden 但此事件绑定仅适用于一

随机推荐

  • 三步使用bert搭建文本分类器

    不说废话 直接三步搭建最简单的bert文本多标签分类器 1 去官网https github com google research bert 下载一个bert模型 2 搭建bert service https github com hanx
  • 哈希学习简介

    一 背景介绍 1 首先介绍一下最近邻搜索 最近邻搜索问题 也叫相似性搜索 近似搜索 是从给定数据库中找到里查询点最近的点集的问题 给定一个点集 以及一个查询点q 需要找到离q最近的点的集合 在大规模高维度空间的情况下 这个问题就变得非常难
  • android 进程监控 top

    adb shell top h top h Usage top m max procs n iterations d delay s sort column t h m num Maximum number of processes to
  • mybatis-plus自定义分页实现 (精)

    添加pom依赖
  • EVE-NG初始安装及配置_笔记

    1 安装VMware 2 导入EVE的ova镜像 3 初始化配置 ubantu server linux 设置root密码 域名 主机名 IP地址 root eve 123456 123456 主机名 域名 IP地址获取 DHCP STAT
  • mysql数据库管理-mysql分区表管理

    1 分区概述 无论是哪种 MySQL 分区类型 要么分区表上没有主键 唯一键 要么分区表的主键 唯一键都必须包含分区键 也就是说不能使用主键 唯一键字段之外的其他字段分区 例如 emp 表的主键为id字段 在尝试通过store id字段分区
  • React实现拖拽效果

    最近遇到一个拖拽的业务 那么我们需要了解一下拖拽的流程 让我们来实现这个组件吧 一 拖拽流程 编写项目之前我们先了解一下拖拽大致的流程 以及触发的事件 其实拖拽一共分为三个步骤 1 onmousedown 拖拽事件的最开始 在这个简单我们要
  • 发现一个xdotool,是个神器

    xdotool是linux下 类似 按键精灵 的工具 在一些自动测试时 经常用到 以上为xdotool正常使用 比如说 模拟击键a xdotool key a 模拟两个键alt tab xdotool key alt Tab 自动输入wor
  • SeaTunnel本地运行以及kafka发送到redis说明

    下载 Seatunnel2 3 1源码 Idea中的目录结构 编译 通过maven进行代码编译 编译命令 mvn clean package pl seatunnel dist am Dmaven test skip true 编译单个模块
  • 【恶意代码与软件安全分析】(三)dynamic analysis

    恶意代码与软件安全分析 三 virtualbox崩掉了 只能跳过第二章先做第三章了 动态分析 在一个安全的环境下运行恶意软件并观察其行为 分析后输出内容 process Service Behavior 进程创建 进程终止 进程数 netw
  • Vue再学习2_组件开发

    Vue再学习2 组件开发 全局组件 在main js中配置 配置完成之后可以全局使用 1 引入组件对象 import GlobalTitle from components GlobalTitle vue 2 声明全局组件 Vue comp
  • cmd 执行html文件,cmd执行bat文件 cmd文件和bat文件有什么区别?

    cmd怎么执行dos下的bat文件在文件目录直接输入bt4 bat就可以了 记住要输入完整的文件名 包换后缀名 比如 11 bat在D盘根目录 在D gt 后面直接输入11 bat 回车 cmd下执行bat文件的命令 在cmd下执行bat文
  • idea 将springboot项目的Application加入service标签里

    idea 将springboot项目的Application启动器加入service标签里 最终效果图如下 第一步 最开始底部显示没有service服务 添加service 第三步 完成以上操作后底部会这样显示 然后点击 第四步 选择Mav
  • SQL Server [使用SSMS来分离数据库] 奋斗的珂珂~

    分离数据库 分离数据库就是将某个数据库 如student Mis 从SQL Server数据库列表中删除 使其不再被SQL Server管理和使用 但该数据库的文件 MDF 和对应的日志文件 LDF 完好无损 分离成功后 我们就可以把该数据
  • Android中的ConstraintLayout约束布局

    ConstraintLayout约束布局 ConstraintLayout有啥好处呢 可以减少布局层次 特别适合复杂的大型布局 可谓是集线性布局和相对布局于一身的荣誉布局 使用 添加依赖 目前 AndroidStudio新的版本默认就给你上
  • MMdetection3D学习系列(二)——KITTI数据集训练测试及可视化

    安装完环境以后 就可以进行测试了 这里我使用的是KITTI数据集进行测试 关于KITTI数据集 网上有很多介绍了 这里简单说一下在mmdet3d中它需要的文件层级样式吧 主要是针对RGB和点云数据进行检测 一般来说采用其中一侧的彩色摄像头的
  • centos7重启或关机卡死

    这个问题其实是systemd219这个版本的问题 查看systemd版本 请使用systemctl version 由于systemd进程的判断比之前更加严格 如果某些进程不响应SIGTERM信号 可能会导致重启是挂死 该问题和业务进程对S
  • Ubuntu查看安装的软件、.开头的文件

    1 dpkg l grep 比如 dpkg l grep libjansson4 2 show hidden files那里
  • Spring整合mybatis和Junit单元测试

    1 Spring整合mybatis 前提了解 spring 管理 mybatis mybatis 管理 mapper 要依赖于德鲁伊连接池 spring 管理sqlsessionfactory 思路 Spring整合Mybatis主要做两件
  • Vue极简使用2

    Vue极简使用 Vue基础内容 模板语法 解析文本 解析原始HTML 动态属性 模板语法使用限制 条件渲染 列表渲染 事件处理 列表渲染 事件处理 修饰符 表单输入绑定 计算属性 样式处理 表单输入和绑定 修饰符 计算属性和监听器 计算属性