vue学习笔记(二)
1. 模板的理解
1.动态html页面
2.包含了一些js语法代码
【插值语法】双大括号表达式 (“Mustache”语法)【一个】
插值语法:
功能:用于解析标签体内容 写法:{undefined{xxx}},xxx是js表达式,且可以直接读取到data中的所有属性
【指令语法】指令(以v-开头的自定义标签属性)【很多】
指令语法:
功能:用于解析标签(包括:标签属性、标签体内容、绑定事件…) 举例:v-bind:href=“xxx” 或 简写为 :href=“xxx”,xxx同样要写js表达式,且可以直接读取到data中的所有属性 备注:Vue 中有很多的指令,且形式都是:v-???
1.语法: {{exp}}
2.功能: 向页面输出数据
3.可以调用对象的方法
3. 指令语法:强制数据绑定 v-bind:
单向数据绑定
语法:v-bind:href ="xxx" 或简写为 :href ="xxx"
v-bind:xxx='yyy' // yyy会作为表达式解析执行
:xxx='yyy'
特点:数据只能从 data 流向页面
双向数据绑定 指令 v-model
语法:v-mode:value="xxx" 或简写为 v-model="xxx"
特点:数据不仅能从 data 流向页面,还能从页面流向 data
4. 指令语法:绑定事件监听 v-on:
功能:绑定指定事件名的回调函数
完整写法
v-on:click='xxx'
v-on:keyup='xxx(参数)'
v-on:keyup.enter='xxx'
简洁写法
@click='xxx'
@keyup='xxx'
@keyup.enter='xxx'
5. 示例
v-text
1.作用:向其所在的节点中渲染文本内容。
2.与插值语法的区别:v-text会替换掉节点中的内容,{{xx}}则不会。
v-html
1.作用:向指定节点中渲染包含html结构的内容。
2.与插值语法的区别:
(1).v-html会替换掉节点中所有的内容,{{xx}}则不会。
(2).v-html可以识别html结构。
3.严重注意:v-html有安全性问题!!!!
(1).在网站上动态渲染任意HTML是非常危险的,容易导致XSS攻击。
(2).一定要在可信的内容上使用v-html,永不要用在用户提交的内容上!
6. 条件渲染指令
v-if
v-else
写法:
v-if="表达式"
v-else-if="表达式"
v-else="表达式"
适用于:切换频率较低的场景。
特点:不展示的DOM元素直接被移除。
注意:v-if可以和:v-else-if、v-else一起使用,但要求结构不能被“打断”。
添加样式隐藏(display: none)
v-show
写法:v-show="表达式"
适用于:切换频率较高的场景。
特点:不展示的DOM元素未被移除,仅仅是使用样式隐藏掉
【备注】使用v-if的时候,元素可能无法获取到,而使用v-show一定可以获取到。
7. 比较v-if与v-show
如果需要频繁切换 v-show 较好
分类:
Vue
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix