IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> (尚硅谷)Vue笔记-------03 -> 正文阅读

[JavaScript知识库](尚硅谷)Vue笔记-------03

el与data的两种写法

el的两种写法:

之前的写法(第一种写法):

我们把el注释掉:

?

我们看到了我们的vue对象,其中前面带$符号开头的方法,都是我们可以使用的。我们这里要用的是$mount()方法。

第二种写法:

通过结果,我们发现我们用v.mount()可以代替el完成同样的效果。

先等1秒钟之后,再绑定vue实例:

运行的时候:

1秒钟之后:

data的两种写法:

第一种写法:

第二种写法:

?运行结果:

?

?如果我们写成了箭头函数:

?

箭头函数没有自己的this,它只能向外找,找上一层的this就是window??

所以data不能写成箭头函数,只能写成function函数

但是这么写比较麻烦,一般都用简化一点的写法:

?总结:

1.el有两种写法

(1)new Vue时候配置el属性。

(2)先创建Vue实例,随后再通过vm.$mount('root')指定el的值。

2.data有两种写法

(1)对象式

(2)函数式

如何选择:目前哪种写法都可以,以后学习到组件时,data必须使用函数式,否则会报错。

3.一个重要的原则:

由Vue管理的函数,一定不要写箭头函数,一旦写了箭头函数,this就不再是Vue实例了。

MVVM模型

1.M:模型(Model):对应data中的数据

2.V:视图(View):模板

3.VM:视图模型(ViewModel):Vue实例对象

总结:

?MVVM模型

1.M:模型(Model):data中的数据

2.V:视图(View):模板代码

3.VM:视图模型(ViewModel):Vue实例

观察发现:

1.data中所有的属性,最后都出现在了vm身上。

2.vm身上所有的属性及Vue原型上所有属性,在Vue模板中都可以直接使用。

数据代理

回顾Object.defineProperty方法;

?我们发现浏览器上age属性的颜色要淡一些,那它有什么不同呢?

age属性是不能枚举的,也就是不能被遍历的。

例:

我们直接写age:

我们换成Object.defineProperty方法写入age?

我们发现age获取不到了

?我们用forin循环也可以验证这一点l;

?

运行:

?

那我们有什么办法可以让它能被遍历输出呢?

就要用到enumerable属性了:

?

?

三个属性的颜色一样了,这个时候可能会问,那这两个不就没有区别了么?

当然也不是,虽然都能遍历了但是还是不一样的

例:

当我们直接在person下定义age属性时:

?

?

在控制台可以改变person类中age的值

我们用Object方法时:

?

?

无法改动person类的age属性的值

?

那我们用Object方法就改变不了age 的值了么,当然可以 就要用到新的属性值writable

例:

?

我们正常写法时,如果想删除元素:

?

?

我们可以随意删除

如果是用Object方法的方式:

?

?

我们没法删除。

所以如果想要删除,需要配置项?configurable

例:

?

?

这段代码 我们希望我们改number,age的值跟着更改

?

这时我们要是想完成需求 每次都要值传递:

?

需要我们手动改多了一个中间过程,太麻烦了

所以我们仍然需要引入新的配置项:

?

?

点击三个省略号:

?

?

既然有get就肯定也有set

?运行测试一下:

?我们通过这个Object的方法 把对象里的age和number连在一起了,这个get和set十分重要

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-10-03 17:00:20  更:2021-10-03 17:00:31 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 22:15:46-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码