Vue的相关指令

目录

[1、Vue 是什么](#1、Vue 是什么)

[2、插值表达式{{ }}](#2、插值表达式{{ }})

3、Vue的特点

4、Vue指令

1、内容渲染指令

2、条件渲染指令

[v-if 与v-show的区别](#v-if 与v-show的区别)

v-html,v-text与{{}}的区别

5、事件绑定指令

6、属性绑定指令

7、列表渲染指令

8、表单指令


1、Vue 是什么

概念:Vue 是一个用于 构建用户界面 的 渐进式 框架

vue理解

Vue 是一个用于 构建用户界面 的 渐进式 框架,(vue是js的一个渐进式框架)

具有响应式,数据驱动视图的思想,不推荐直接操作dom,底层封装了dom,

组件开发思想,提供了一些指令,能够提高开发效率,构建单一页面应用

使用步骤:

  • 引入Vue
  • 准备dom
  • 创建Vue实例
  • {{ }}插值表达式

创建Vue实例,初始化渲染的核心步骤:

1.准备容器

2.引包(官网) --开发版本/生产版本

3.创建Vue实例 new Vue()

4.指定配置项 el data =>渲染数据

  • el指定挂载点,选择器指定控制的是哪个盒子

  • data提供数据

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <!-- 引线上的vue包 -->
    <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.js"></script>
    <div id="app">
<!-- 只有在此标签内的元素,才会被vue所管理 -->
    </div>
    <script>
        const app=new Vue({
            el:'#app',//挂载
            data:{

            }
        })
    </script>
</body>
</html>

2、插值表达式{{ }}

语法格式:{{ 表达式 }}

**作用:**把{{}}中的值渲染到页面中

利用表达式进行插值,将数据渲染页面中

注意:(1)使用的数据必须存在( data)

(2)支持的是表达式,而非语句,比如:if for ...

(3)不能在标签属性中使用{{}插值

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <!-- 构建用户界面
        基于数据渲染页面
     -->
    <div id="app">
        {{info}}-{{arr}}
    </div>
    <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.js"></script>
    <script>
        new Vue({
            //元素
            el: '#app',
            //数据
            data: {
                info: 'hello vue',
                arr:[1,2,3]
            }
        })
    </script>
</body>

</html>

3、Vue的特点

1.不需要操作dom(vue底层做了封装,开发人员不需要直接操作dom)

2.响应式: 数据改变---->视图自动改变

响应式原理核心:Object.defineProperty( )

3.组件化开发

. . .

4、Vue指令

指令 v-开头的属性

1、内容渲染指令

v-html / v-text => innerHTML / innerText -------给元素添加内容

语法:v-html = " data中的数据"

2、条件渲染指令

v-if / v-else-if / v-else, v-show

v-if="表达式" ,当表达式值为true,v-if所作用的元素显示,否则隐藏

v-show="表达式" ,当表达式值为true,v-show所作用的元素显示,否则隐藏

v-if 与v-show的区别

v-if 控制元素显示与隐藏,通过js创建dom元素或删除元素

v-show 通过css的display显示与隐藏

频繁切换元素显示与隐藏用v一show,其余可以用v-if

v-if 可以与v-else-if ,v-else 搭配使用

v-html,v-text与{{}}的区别

内容不改变用{{}}

v-html,v-text可以改变元素的内容

{{}}里的内容要等js引入才显现,有闪烁,闪烁后{{}}消失

5、事件绑定指令

Vue指令v-on

1。作用:注册事件=添加监听+提供处理逻辑

2.语法:

v-on:事件名= "内联语句"

v-on:事件名= "methods中的函数名"

3.简写:@事件名

4.注意:methods函数内的this指向Vue实例

传参:

调用方法不传递任何参数,默认第一个形参就是事件对象

传递参数,实参要通过$event

6、属性绑定指令

Vue指令v-bind

1.作用:动态的设置html的标签属性→src url title

2.语法:v-bind:属性名="表达式"

3.注意:简写形式:属性名="表达式"

v-bind:属性='data中的数据'

或简写 :属性='data中的数据'

属性灵活时

:属性名='js表达式' 动态绑定

不加:是字符串

7、列表渲染指令

Vue指令v-for

1.作用:基于数据循环,多次渲染整个元素→数组、对象、数字...

2.遍历数组语法:

item每一项, index下标

省略index: v-for = "item in数组"

v-for中的 key

语法:key属性="唯一标识"

作用:给列表项添加的唯一标识。便于Vue进行列表项的正确排序复用。

v-for 中的key - 不加key

v-for的默认行为会尝试原地修改元素(就地复用)

注意点:

1.key的值只能是字符串或数字类型

2.key的值必须具有唯一性

3.推荐使用id 作为key (唯一),不推荐使用index作为key(会变化,不对应)

8、表单指令

Vue指令v-model

1.作用:给表单元素使用,双向数据绑定→可以快速获取或设置表单元素内容

①数据变化→视图自动更新

视图变化→数据自动更新

2.语法:v-model= '变量'

v-model 双向绑定 用于表单元素

v-bind : 属性名='data中数据' 动态绑定

文本框中:v-model 等价于 : value + @input

$event 事件对象

V-model="数据"等价于:value="数据"+@input="数据=$event.target.value"

相关推荐
小小小小宇13 分钟前
前端visibilitychange事件
前端
小小小小宇1 小时前
前端Loader笔记
前端
烛阴2 小时前
从0到1掌握盒子模型:精准控制网页布局的秘诀
前端·javascript·css
前端工作日常5 小时前
我理解的`npm pack` 和 `npm install <local-path>`
前端
李剑一5 小时前
说个多年老前端都不知道的标签正确玩法——q标签
前端
嘉小华5 小时前
大白话讲解 Android屏幕适配相关概念(dp、px 和 dpi)
前端
姑苏洛言5 小时前
在开发跑腿小程序集成地图时,遇到的坑,MapContext.includePoints(Object object)接口无效在组件中使用无效?
前端
七八书6 小时前
Vue3 组件通信全解析:从基础到进阶的实用指南
vue.js
奇舞精选6 小时前
Prompt 工程实用技巧:掌握高效 AI 交互核心
前端·openai
用户3802258598246 小时前
vue3源码解析:模块总览
vue.js