Vue基础入门

9 篇文章 1 订阅

何为Vue?

 官方概念:是一套用于构建用户界面的前端框架。

Vue 的两个特性:

 1. 数据驱动视图

    使用 vue 的页面中,vue 会监听数据的变化,从而自动重新渲染页面结构(即数据的变化会驱动视图进行自动更新)。

    优点在于:我们只需要维护好数据,页面结构便会被 vue 自动渲染。

    需要注意的是:数据驱动视图是单向的数据绑定。

2. 双向数据绑定

    在填写表单时,双向数据绑定能够以辅助开发者在不操作 DOM 的前提之下,自动将用户所填写的内容同步到数据源中。(即页面中表单采集的数据发生变化后,会被 vue 自动获取,并更新到js数据之中)

    优点在于:无需手动操作 DOM 元素,来获取表单元素的最新值。

MVVM(Model、View、ViewModel)

    MVVM 是 vue 实现数据驱动视图和双向数据绑定的核心原理,它将每个HTML页面都拆分成了三个部分:

    Model:表示当前页面渲染时所依赖的数据源。

    View:表示当前页面所渲染的DOM结构。

    ViewModel:表示 vue 的实例,是 MVVM 的核心。

 MVVM的工作原理

 

     ViewModel 作为 MVVM 的核心,它将当前页面的数据源(Model)和页面的结构(View)连接在一起。

    当数据源发生变化时,会被 ViewModel 监听到,VM 会根据最新的数据源自动更新页面的结构。

    当表单元素的值发生变化时,也会被 VM 监听到,VM 会把变化后的最新值自动同步到 Model 数据源中。

Vue指令

一. 内容渲染指令

  1. v-text 指令的缺点:会覆盖元素内部原有的内容。

  2. {{ }} 插值表达式:在实际开发中用的最多,只是内容的占位符,不会覆盖原有的内容。

  3. v-html 指令的作用:可以把带有标签的字符串,渲染成真正的 HTML 内容。

二. 属性绑定指令

    1. 在 vue 中,可以使用 v-bind: 指令,为元素的属性动态绑定值 。

    2. 简写是英文的 :

    3. 在使用 v-bind 属性绑定期间,如果绑定内容需要进行动态拼接,则字符串的外面应该包裹单引号,例如:

<div :title="'box' + index">这是一个 div</div>

三. 事件绑定

    1. v-on: 简写是 @

    2. 语法格式:

<button @click="add"></button>

methods: {
   add() {
			// 如果在方法中要修改 data 中的数据,可以通过 this 访问到
			this.count += 1
   }
}

   3. $event 的应用场景:如果默认的事件对象 e 被覆盖了,则可以手动传递一个 $event。 如:

<button @click="add(3, $event)"></button>

methods: {
   add(n, e) {
			// 如果在方法中要修改 data 中的数据,可以通过 this 访问到
			this.count += 1
   }
}

   4. 事件修饰符

.prevent

<a @click.prevent="xxx">链接</a>

 .stop

<button @click.stop="xxx">按钮</button>

四. v-model 指令

    1. input 输入框

  • type="radio"

  • type="checkbox"

  • type="xxxx"

    2. textarea

    3. select

五. 条件渲染指令

    1. v-show 的原理是:动态为元素添加或移除 display: none 样式,来实现元素的显示和隐藏

  • 如果要频繁的切换元素的显示状态,用 v-show 性能会更好。

    2. v-if 的原理是:每次动态创建或移除元素,实现元素的显示和隐藏

  • 如果刚进入页面的时候,某些元素默认不需要被展示,而且后期这个元素很可能也不需要被展示出来,此时 v-if 性能更好。

 v-if 指令在使用的时候,有两种方式 :

    1. 直接给定一个布尔值 true 或 false

<p v-if="true">被 v-if 控制的元素</p>

    2. 给 v-if 提供一个判断条件,根据判断的结果是 true 或 false,来控制元素的显示和隐藏

<p v-if="type === 'A'">良好</p>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fusheng_cn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值