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模板中都可以直接使用

相关推荐
mCell2 小时前
AI 时代 SVG 画图的潜力
前端·agent·svg
我命由我123458 小时前
CesiumJS 笔记 - 获取容器中心点、Cartesian3 clone 方法、修改 Cartesian3 对象的高度
前端·javascript·css·前端框架·html·html5·js
Hopebearer_8 小时前
页面突然只剩 DOM?一次静态资源版本错配排查
前端·部署
抱抱宝9 小时前
Agent-study项目教程(03):手写 Mini-ReAct Agent(不依赖框架)
javascript·人工智能·gpt·react.js·prompt·agent
东风破_9 小时前
ESLint 是什么?为什么你的项目需要它?
前端·后端·代码规范
用户938515635079 小时前
Next.js 笔记系统(二):Redis 数据服务与侧边栏组件拆分实战
javascript·全栈
java1234_小锋10 小时前
Vue3专题 - 组件基础
vue.js·vite
圣殿骑士-Khtangc11 小时前
Go字符串高效拼接性能对比与底层原理分析
服务器·前端·golang
BigTopOne11 小时前
【ijkplayer】 硬解码流程
前端
kyriewen12 小时前
DeepSeek Harness开源第一天我就上手了——和Claude Code的差距比想象中大
前端·ai编程·deepseek