Vue核心(一)

Vue核心(一)

一、初始Vue

1、想让Vue工作,就必须创建一个Vue实例,且要传入一个配置对象

2、app容器里的代码依然符合html规范,只不过混入了一些特殊的vue语法

3、app容器里面的代码被称为Vue模板

4、vue实例和容器是 一 一对应的

5、 真实开发中只有一个vue实例,并且会配合着组件一起使用

6、{{xxx}}中的xxx要写成js表达式,且xxx可以自动读取到data中的所有属性

7、一旦data中的数据发生改变,那么模板中用到该数据的地方也会自动更新(响应式数据)

注意区分: js表达式和js代码

1、表达式: 一个表达式会生成一个值,可以放在任何一个需要值的地方

javascript 复制代码
(1) a
(2)a + b
(3)demo(1)
(4)x === y ?'a' : 'b'

2、js代码

javascript 复制代码
(1)if() {}
(2)for() {}

二、模板语法

2.1 插值语法

功能: 用于解析标签体内容

语法: {{xxx}} xxx是js表达式,且可以直接读取到data中的所有属性

2.2 指令语法

功能: 用于解析标签(包括标签属性、标签体内容、绑定事件等等)

举例: v-bind:href="xxx" / :key="xxx" xxx同样要写js表达式,且可以直接读取到data中的所有属性

备注: vue中有很多的指令,且形式都是v-xxx(例如v-bind、v-if、v-model、v-on等等)

三、数据绑定

特点:

1、单向绑定(v-bind): 数据只能从data流向页面

2、双向绑定(v-model): 数据不仅能从data流向页面,还可以从页面流向data

注意:

a, 双向绑定一般都应用在表单元素上(例如input、select等)

b, v-model:value 可以简写为v-model, 因为v-model默认收集的就是value值

四、data与el的两种写法

· el的两种写法

(1)new Vue时配置el属性

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

· data的两种写法

(1)对象式

(2)函数式(在组件中必须使用函数式)

· 一个重要原则:

由Vue管理的函数, 一定不要写箭头函数,一旦写了箭头函数,this就不再是Veu实例,而是window(全局对象)

五、MVVM模型

定义: M(model-模型):对应data中的数据; v(view-视图): 模板; VM(vm-ViewModel):Vue实例对象

特点:

a, data中所有的属性,最后都出现在vm身上

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

相关推荐
李白的天不白17 分钟前
Tree-Shaking
前端
Csvn36 分钟前
TypeScript:你以为安全的 `JSON.parse` 其实是颗雷 — 运行时类型安全实战
前端·javascript
触底反弹40 分钟前
从 JS 引擎执行原理理解数据类型:栈内存、堆内存与作用域
javascript·数据结构·面试
橘子星40 分钟前
深入理解线性数据结构:栈、队列与链表
前端·javascript
dadaobusi41 分钟前
Linux内核完成大量内存/调度/时间子系统初始化的关键阶段
java·linux·前端
用户0595401744641 分钟前
Redis 缓存过期不一致踩坑实录:一个 bug 让我排查了 3 小时,最终用 Pytest 自动化堵上漏洞
前端·css
东风破_42 分钟前
AJAX 异步请求:从回调地狱到 async/await,到底解决了什么?
前端
Larcher42 分钟前
JS 数据类型的八重人格与内存真相
前端·javascript
星辰徐哥1 小时前
工具推荐:HTML5+AI开发必备的前端调试工具
前端·人工智能·html5
Full Stack Developme1 小时前
Linux Shell 教程概览
linux·前端·chrome