pb调用键盘钩子的例子_Vue框架之什么是生命周期钩子?

今天是刘小爱自学Java的第137天。

感谢你的观看,谢谢你。

9379c5b7cab420de2d12f7fcb99a9336.png

学习计划安排如下:

  • Vue的深入学习,emm准确地说还不能算是深入学习,我有点高估自己的学习进度了。
  • 本来打算两天时间做一个基础入门的,毕竟教程也就一天的内容,看来计划赶不上变化。
  • vue中三大常用属性的小结、生命周期钩子的了解,以及指令的初步接触。
  • 指令有点多,只能留到明天继续补全了。

一、回顾与生命周期

补充说明三大属性,当然vue肯定不止这些,只不过时间有限,只学下最常见的。

1回顾

57c1181621be6432f26772f6a0e4d93d.png

每次new一个Vue实例都需要关联模板,Vue会基于此模板进行视图渲染。

①el属性:指定视图模板

这里是通过el+id选择器指定视图模板,例子中也就是id为app的div标签。

当然还可以通过template来指定视图模板,这种方式我们暂且就不学了。

②data属性:指定数据模型

data也就对应着数据模型,数据相关的都可以放在这里面。

③methods属性:指定方法模型

注意是methods,后面有个s不要忘记了,一开始我直接写的method,就出了问题。

其实这也很好理解,methods里面是存放方法的,肯定不止一个,故用复数形式。

例子中helloVue是方法名,其中function可以省略,直接写一个helloVue方法。

2生命周期钩子

钩子,就可以将其理解成回调函数,Vue为生命周期中的每个状态都设置了钩子函数。

每当Vue实例处于不同的生命周期时,对应的方法就会被触发调用,其中生命周期有好几个状态,我们只学最常见的两个:

98f511c6d358e546615000ea1beb0ee8.png

①created

代表在vue实例创建后,通过控制台我们可以发现:在创建vue实例之后,Vue才会调用create方法。

②beforeCreate

代表在vue实例创建之前,通过控制台我们可以发现:在创建vue实例之前,Vue会先调用beforeCreate方法。

注意:这两个函数这里是用的省略写法,省略了function这个关键字。

3关于this

this和Java中的意思是差不多的,this用一句话说明就是:“谁调用我,它就是谁。”

我们做一个测试,同时引入几个知识点:

c43d92be886041a8cd2a388470dabdff.png

①setTimeout()

设置一个定时器,有两个参数:第一个参数为一个函数,第二个参数为定时时间,例子中也就是2000毫秒后执行函数。

此时this指的是Window对象,因为在js中设定了定时器,时间到了后,会由window去调用前面的函数并执行,所以this指的就是它。

②setTimeout()箭头函数

该方式为ES6中的语法,这块我们没有专门学,知道有这个函数即可。

同样是setTimeout()方法,只不过写法不同,为何这里的this指的又是当前vue对象本身?

箭头函数底层做了处理,将其转化成了对应的vue对象,显然这种方式是我们所需要的,以后基本都以箭头函数这种写法为主。

二、插值闪烁

有时使用电脑或者手机,因为网速较慢,页面加载很慢会出现看到源码的情况,做个测试:

0dc52242ebeb0842556d03b26be7bbd2.png

在浏览器中设置网络为3G网络,在刷新页面时会先看到{{name}},大约2秒后,页面加载完成才会显示正常的数据。

这个也好理解,页面是从上到下执行的:

  • 当页面加载到div标签时,JS还未加载到,所以name的值是多少并不知道。
  • 当页面加载完毕后才能显示正确的数据。

这种情况就叫做差值闪烁,以差值闪烁为例子,引出对于“指令”的学习。

三、指令

什么是指令?

指令是指带有 v-前缀的特殊属性。

例如在回顾中的v-model,代表了就是view和model的双向绑定。

那差值闪烁的问题怎么解决呢?

1v-text和v-html

93fffe2d9c6e5fa3c9e8992423a5ea09.png

①指令:v-text

将数据输出到元素内部,如果输出的数据有HTML代码,会作为普通文本输出。

②指令:v-html

将数据输出到元素内部,如果输出的数据有HTML代码,会被渲染。

这个就和jQuery中的html方法太像了。

2v-model

这个指令我们昨天就接触过,回顾中也有,是应用在input标签中的text类型中。

其实目前v-model的可使用元素有:

input,select,textarea,checkbox,radio,components(自定义组件)

除了最后一项,其它都是表单的输入项,我回顾了一下我以前的form表单笔记。

vue中将单选框radio,复选框checkbox单独拎出来了,这些本来是属于input的。

我们以复选框作为一个例子。

037544cb00602066726758d287bf1912.png

①checkbox

这就是一个复选框,用v-model指令将它们一一和hobbys这个属性绑定。

hobbys.join()可以将获取的元素以参数内容的形式隔开。

②hobbys:[]

这个符号所表示的就是一个数组,和Java中是一样的。

其中值得注意的是

多个CheckBox对应一个model时,model的类型是一个数组;单个checkbox值是boolean类型。

最后

时间受限,剩下的只能明天接着说了,谢谢你的观看。

如果可以的话,麻烦帮忙点个赞,谢谢你。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值