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

相关推荐
烬羽几秒前
给 Agent 一个检索式记忆:把对话历史存进 Milvus,该记的都记得
javascript·数据库·agent
磐链科技10 分钟前
区块链开发入门实战:用 Hardhat 与 Ethers.js 搭建你的第一个 DApp
开发语言·javascript·区块链
码艺-Alimjan24 分钟前
维吾尔语数字转文本
java·javascript·python·算法·go
可乐鸡翅yeah_24 分钟前
hls.js 多实例并发踩坑,多视频页面播放器内存与冲突问题解决
开发语言·前端·javascript·音视频·hls·m3u8·m3u8在线播放
涛涛ing33 分钟前
你的页面为什么总是卡成PPT?2026年,90%的前端都忽略了主线程
前端
SoaringHeart34 分钟前
Flutter 进阶 | 组件封装:用 CustomPainter 实现光环动画组件AnimatedHalo
前端·flutter
IT_陈寒39 分钟前
JavaScript的隐式转换太坑了,我的==比较怎么就炸了?
前端·人工智能·后端
雪芽蓝域zzs1 小时前
第十四节:后端返回权限动态路由
前端·javascript·vue.js
小磊哥er1 小时前
Wonder Claude Code - 一个可运行的、教学级的 Claude Code 精简复刻
javascript·ai编程
Rain5091 小时前
谁动了我的 URL?——记一次微前端“灵异 Bug“的排查实录
前端·vue.js·人工智能·前端框架·bug·ai编程