Vue基础知识(一)

本文是Vue.js的基础教程,涵盖了Vue框架的概述、实例化参数、计算属性、监听、自定义指令、过滤器、各种指令的详细解释,包括文本渲染、属性绑定、条件渲染、列表渲染、事件处理、表单绑定、类和样式绑定,以及组件的使用。通过本文,你可以快速了解并掌握Vue的基本用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

概述

实例化参数new Vue

计算 computer

监听 watch

自定义指令 directives

过滤-管道

指令

动画

组件

一、概述

前端框架三驾马车

Vue
React
Angular

Vue是一款渐进式JavaScript前端框架语言
作者:尤雨溪
官网:cn.vuejs.org

插件案例:
https://github.com/opendigg/awesome-github-vue

特点:
1、简单,上手方便
2、结合Angular指令与React组件思维
3、生态丰富(插件多)API文档完善

二、实例化参数 new Vue

el:"#app"  指定目标标签
data:{}        指定数据
data(){return{}}        一个函数返回一个对象
methods:{}        方法

三、计算 computer

从现有的数据计算出新的数据

computer:{
    rmsg(){
        return this.msg.split("").reverse().join('')
    }
}

四、监听

监听数据的变化,并执行回调函数handler

watch:{
    "num":{
        handler(nval,oval){},
        deep:true
    }
}

五、自定义指令

bind绑定执行一次
insert插入执行一次
updata每更新执行一次

directive:{
    "v-show":{
        update(el,binding){
            if(binding.value){el.focus{}}
        }
    }
}
<input v-focus="flag">

六、过滤-管道

格式化数据

使用:
1、{{num|fix}}
2、{{num|fix(2)}}
3、v-text="num|fix"

filters:{
    fix(value,arg=2){
        return value.toFixed(arg)
    }
}
//保留小数点两位

七、指令

指令的值可以是简单的JavaScript命令

1、文本渲染指令

(1){{  }}
(2)v-text
(3)v-html(渲染html文本)

2、属性绑定

v-bind:属性="指令值"
:属性="值"

3、条件渲染

v-show
v-if
v-else-if
v-else

频繁切换用v-show,一次性切换用v-if
v-show隐藏方式是通过css的方式隐藏节点

4、列表渲染

v-for="item in list"
list:要遍历的数组        item:当前遍历的项目

v-for="(item,index) in list"
index当前遍历项的索引从0开始

使用v-for务必
v-bind:key=""
:key="值"
值必须是唯一的
添加key属性可以优化v-for的渲染,让vue更好识别当前渲染的节点,特别是排序、过滤等操作的时候,不建议key的值使用循环的索引

5、事件指令

v-on:事件类型="响应函数"
v-on:click"say()"

@click="say()"
事件的简写

@click="num++"
行内事件响应

事件修饰符

.stop阻止事件冒泡
.prevent阻止默认事件
.once只执行一次

@click.stop.prevent.once="num++"
事件的修饰符可以同时写多个

按键修饰符

.up
.down
.left
.right
.delete
.enter
.space
.esc

事件对象 $sevent

6、表单绑定指令

v-model
让表单的值与数据绑定在一起

<input type="checkbox">
默认选中的值是true        不选中的值是false

<input type="checkbox" name="fruit" v-model="list">
如果是多个把选中的值动态添加到list数组中

修饰符

.number 数字
.trim 移除两端空白

7、类绑定

(1)属性
:class="值"

(2)对象
当对象的属性值为真,该属性作为class绑定
:class="{'key1':true,'key2':false}"
key1的值为真,key1会被绑定,key2不会

(3)数组方法
:class="[c1,c2,c3]"

8、样式绑定

:style="{color:'red','fontSize':'48px'}"
属性名去掉“-”,下一个字母大写

八、动画

1、vue动画在内置组件transition包裹会自动在动画的进入过程与离开过程添加类名

2、内置组件

transition

name名称
mode:模式
in-out先进再出
out-in先出再进
enter-active-class指定进入类名
leave-active-class指定离开类名

3、动画类

v-enter-active        进入过程

v-enter进入前
v-enter-to进入后

v-leave-active        离开过程

v-leave离开前
v-leave-to离开后

4、创建动画形式

1、动画类6个css创建

2、keyfrmes关键帧

.fade-enter-active(animate:fadeIn ease 1s)
.fade-enter-active(animate:fadeOut ease 1s)

3、引入第三方动画库

指定进入的class与离开的class
<transiton enter-active-class="slideIn animated"
leave-active-class="hinge animated">

九、组件

一段可以重复利用的代码块

全局组件
Vue.component("组件名",{template:``})

局部组件
const steper={template:``}

注册组件
 

new Vue({
    components:{steper}
})

使用组件
<steper></steper>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值