欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 维修 > 前端(vue)学习笔记(CLASS 2):进阶

前端(vue)学习笔记(CLASS 2):进阶

2025/2/28 17:33:46 来源:https://blog.csdn.net/2301_81351468/article/details/145802048  浏览:    关键词:前端(vue)学习笔记(CLASS 2):进阶

指令修饰符:通过“.”指明一些指令的后缀,不同后缀封装了不同的处理操作->简化代码

1、按键修饰符

@keyup.enter 键盘回车监听

2、v-model修饰符

v-model.trim 去除首尾空格

v-model.number 转数字

3、事件修饰符

事件名.stop 阻止冒泡

事件名.prevent 阻止默认行为

4、v-bind对于样式控制的增强

为了方便开发者进行样式控制,Vue扩展了v-bind的语法,可以针对class类名和style行内样式进行控制

操纵class

语法::class="对象/数组"

对象的写法:

<div class="box" :class="{pink:true,black:false}"></div>

使用场景:一个类名,来回切换 

数组就是数组的形式

使用场景:批量添加或删除类

* 案例-京东秒杀tab导航高亮

基本样式:

        .all_gps {display: flex;flex-direction: row;}.gps {width: 150px;height: 50px;margin-left: 10px;background-color: white;text-align: center;line-height: 50px;list-style: none;font-size: 20px;font-weight: bold;color: black;cursor: pointer;}.gps_ck {color: white;background-color: red;}hr {color: red;}

html部分:

    <div id="app"><ul class="all_gps"><li @click="clickIndex=index" v-for="(item,index) in list":key="item.id" :class="{gps_ck: clickIndex===index}" class="gps">{{item.name}}</li></ul></div><hr>

js部分:

        const app=new Vue({el:'#app',data:{clickIndex: 0,list:[{id:1,name:'京东秒杀'},{id:2,name:'每日特价'},{id:3,name:'品类秒杀'}]}})

效果:

点击哪个,哪个就会高亮

操作style

语法: :style="样式对象"

    <div class="box" :style="{CSS属性名1:CSS属性值,CSS属性名2:CSS属性值}"></div>

5、v-model应用于其他表单元素

常见的表单元素都可以用v-model绑定关联->快速获取或设置表单元素的值

它会根据控件类型自动选取正确的方法来更新元素

部分的表单控件需要绑定一个value值,传入data中,可以事项选或不选

6、计算属性

概念:基于现有的数据,计算出来的新属性。依赖的数据变化,自动重新计算

语法:

1、声明在computed配置项中,一个计算属性对应一个函数

2、使用起来和普通属性一起使用{{计算属性名}}

computed计算属性:

作用:封装了一段对于数据的处理,求得一个结果

method方法:

作用:给实例提供一个方法,调用以处理业务逻辑

语法:

1、写在methods配置项中

2、作为方法,需要调用-> this.方法名() {{方法名() }} @事件名=“方法名”

缓存特性(提升性能):

计算属性会计算出来的结果缓存,再次使用直接读取缓存,

依赖项变化了,会自动重新计算->并再次缓存

* 计算属性完整写法

计算属性默认的简写,只能读取访问,不能修改       

            computed: {计算属性名: {get() {一段代码逻辑(计算逻辑)return 结果},set(修改的值) {一段代码逻辑(修改逻辑)}}}

7、watch侦听器

作用:监视数据变化,执行一些业务逻辑或异步操作

语法:

简单写法:简单类型数据,直接监视

完整写法:添加额外配置项         

简单写法:

            data: {words:'苹果',obj: {words:'苹果'}},watch: {数据属性名(newValue,oldValue) {一些业务逻辑或异步操作},'对象.属性名'(newValue,oldValue) {一些业务逻辑或异步操作}}

完整写法-添加额外配置项

1、deep:true对复杂类型深度监视

2、immediate:true初始化立刻执行一次handler方法

            data: {obj: {words:'苹果',lang:'italy'}},watch: {数据属性名: {deep:true,handler(newValue) {console.log(newValue)}}}

 

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词