张德长

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

Vue学习笔记

 

Vue基础

前置知识

HTML+CSS+JavaSricpt+WebAPI(DOM+BOM)+Ajax

创建Vue

<script>

new Vue({

  el: '#app',

  data: {

    message: '<h1>菜鸟教程</h1>'

  }

})

</script>

el

el用于设置挂载点;

el会命中匹配的元素和内嵌的匹配元素;

可以使用其他选择器,但是建议使用ID选择器,因为ID是唯一的;

不能使用HTML和BODY标签,但是可以使用其他双标签,不能使用单标签;

'#app'(双引号也行”#app”)挂载到id=“app”标签;

“.app”挂载到所有class=“app”的标签;

“div”挂载到所有div标签;

 

 

data

数据和变量放在data中;

data可以存放所有类型的数据,数值类型、字符串、object、数组等;

渲染复杂类型时,遵循JS语法即可;

{{}}

数据绑定最常见的形式就是使用 {{...}}(双大括号)的文本插值;

<div id="app">

  <p>{{ message }}</p>

</div>

v-text

将内容绑定为纯文本,也就是字符串;

v-text应该放在开始标签内,而不是开始和结束标签之间;

v-text通过设置标签属性,改变标签的内容;

v-text应该放在开始标签内,就会将标签内容设置为v-text指定的变量内容;

<div v-text="message"></div>

v-html

v-html如果传入的数据是文本字符串,和v-text等价;

v-html可以设置元素的内嵌html;

内容中有html结构,就会被解析为html标签;

v-text只会解析纯文本,而不会解析html文本;

<div v-html="message"></div>

 

v-on

为元素绑定事件;

事件名称不需要写on;

v-on指令可以简写为@;

绑定的方法定义在methods属性中;

 

<button v-on:click="reverseMessage">反转字符串</button>

<button @click="reverseMessage">反转字符串</button>

 

v-show

v-show指令用于控制元素的显示和隐藏;

v-show的工作原理是修改元素的display属性,实现html元素的显隐;

v-show指令后面的内容,最终都会被解析为bool类型的值;

v-show:true则显示,false则隐藏;

0表示false,非0数值表示true(如0.1,666);

其他类型变量,如果是null表示false,否则true;

 

 

v-if

v-if用来控制元素的显示状态,和v-show类似;

v-if通过曹总dom元素,来切换显示状态;

v-if的表达式为true,元素存在于dom树中,否则从dom树中移除;

 

<div id="app"> <p v-if="seen">现在你看到我了</p> </div>

<script> new Vue({ el: '#app', data: { seen: true } }) </script>

 

show/if

v-show操作元素的属性,而元素始终都存在于DOM树中;

v-if操纵DOM树,会将元素从DOM树移除或添加;

对于频繁切换的应使用v-show;不频繁的用v-if;

因为操作DOM树资源消耗比较大;

v-bind

为命名属性绑定值;

:后面是绑定的属性名称;

=后面是Vue中变量的名称;

简写语法省略v-bind,而直接使用冒号:;

<img v-bind:src=”imgSrc”>简写<img :src=”imgSrc”>

字符串拼接,imageTitle是字符串变量,+用来拼接字符串,后面的’!!!’是待拼接的字符串值,外边用了双引号,这里就只能用单引号;

<img v-bind:title=”imageTitle+’!!!’”>

三元表达式如果变量isActive为真,则用active作为class的名称,否则空字符串;

双引号内部的字符串会被解析为变量名称;

双引号内的单引号内容会被解析为字符串;

<img v-bind:class=”isActive?’active’:’’”>

如果变量isActive为真,则用active作为class的名称,否则空字符串;

这和三元表达式的效果等价;

<img v-bind:class=”{active:isActive}”>

v-for

v-for作用是根据数组数据生成列表;

v-for经常和数组一起使用;

v-for语法是(item,inedex)in array;

数组长度更新会即时同步到页面上,是相应式的;

 

v-model

v-model 指令用来在 input、select、textarea、checkbox、radio 等表单控件元素上创建双向数据绑定,根据表单上的值,自动更新绑定的元素的值。

输入表单和变量值进行双向绑定,任何一方的数据改变,都会同步到另一方;

v-model用来设置和获取表单元素的值;

绑定数据会和表单元素值相关联;

双向绑定:绑定的数据←→表单元素值;

posted on   张德长  阅读(25)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示