Vue学习 第二天

140 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

Vue 简介

Vue的特性

数据驱动视图

​ 使用Vue页面,vue会监听数据的变化,从而自动重新渲染页面的结构。

双向数据绑定

​ 不需要手动操作Dom元素,获取表单中的元素最新的值

MVVM

​ 指Model、View、ViewModel,它把页面都拆分为三个部分

​ Model:页面渲染时依赖的数据源

​ View:表示页面渲染的Dom

​ ViewModel:表示vue实例,把数据源Model和页面结构View连接起来,实现双向数据绑定。

Vue 标签/属性学习

$event 原生Dom对象

. 事件修饰符

- .prevent 阻止默认事件行为
- .stop 阻止事件冒泡
- .capture 以捕获模式触发当前事件处理函数
- .once 绑定事件只触发一次
- .self 只有在event.target是当前元素自身时触发事件处理函数

按键修饰符

  • .esc 当按下esc时触发
  • .enter

双向数据绑定指令

​ v-model

v-model 修饰符

  • .number 自动将用户输入值转换为数值类型
  • .trim 自动过滤用户输入首尾空白字符
  • .lazy 在"change"时而非"input"时更新

条件渲染指令

  • v-if

    动态创建删除元素(页面初始化时判断条件,且不会频繁加载时使用最佳)

  • v-else-if(配合v-if)

  • v-else(配合v-if)

  • v-show

    使用display:none 控制元素的显示

  • v-for

    使用时绑定一个:key(只能是字符串/数字)

过滤器

基础过滤器

<!-- 过滤器(Filters)是vue为开发者提供的功能,常用于文本的格式化。过滤器可以用在两个地方。1.插值表达式2.v-bind属性绑定 -->

<p>{{message | capitalize}}</p>

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

私有过滤器和全局过滤器

​ 在filter节点下定义的过滤器,成为 私有过滤器.

<!--
全局过滤器 - 独立于每个vm实例之外

Vue.filter()方法接收两个参数:
1. 全局过滤器的名字
2. 全局过滤器处理的函数
-->

<script>
	Vue.filter('capitalize',(str)=>{
        return str.chatAt(0).toUpperCase() + str.slice(1)+"~~"
    })
</script>

其他

1. 过滤器可以连续调用,多个过滤器套娃
2. 调用过滤器时,可以传参(参数从第二开始获取)