vue的事件修饰符、数组变化侦测、计算属性、class绑定、style绑定

一、事件修饰符

功能:用于简化代码。

  • .stop 阻止事件冒泡
  • .prevent 阻止默认事件
  • .once
  • .enter

两种使用方式:

e.stopPropagation(); //第一种

@click.stop="clickP" //第二种

二、数组变化侦测

分为两类:

1、能够引起UI的自动更新:

  • .push()
  • .pop()
  • .shift()
  • .unshift()
  • .splice()
  • .sort()
  • .reverse()

2、值会改变,但是不会引起UI自动更新:

  • .filter()
  • .concat()
  • .slice()

三、计算属性

写一个函数来计算,避免前方代码臃肿: 用computed来实现

<template>

<h3>{{ pangjuzi.name }}</h3>

<p>{{ pangjuzicontent}}</p>

</template>

<script>

export default {

data(){

return {

pangjuzi:{

name:"胖橘子",

content:"前端","pyhton","java"

}

}

},

//计算属性;

computed:{

pangjuzicontent(){

return this.pangjuzi.content.length > 0 ? 'yes' :"no"

}

}

}

</script>

注意:计算属性和methods方法虽然有些类似,但是在调用上有差别。计算属性:计算属性值会基于其响应式依赖被缓存。一个计算属性仅会在其响应式依赖更新时才重新计算方法:方法调用总是会在重渲染发生时再次执行函数。因此使用计算属性会更好。

四、class绑定

绑定对象

<template>

<div :class="{ active: isActive, 'text-danger ' : hasError}">isActive</div>

</template>

<script>

export default {

data(){

return{

isActive : true,

hasError : true

}

}

}

</script>

五、 style绑定

绑定对象

<template>

<div :style="{ color: activecolor,fontsize: fontsize + 'px'}">style绑定</div>

</template>

<script>

export default {

data() {

return {

activecolor: 'red ' ,

fontsize: 30

}

}

}

</script>

相关推荐
codeGoogle3 小时前
自研 IM 还是选择第三方 SDK?企业开发者应该如何权衡?
前端·后端·程序员
zzzzzz3104 小时前
从 react-bits 看动效组件化:别把视觉效果写成一次性页面代码
javascript·react.js·开源
用户938515635074 小时前
React Context 与自定义 Hook 从底层到实践:「跨层级通信 + 副作用封装」全解析
前端·javascript·react.js
滴滴答答哒4 小时前
VUE3+element-plus MultiSelect 多选下拉组件
前端·javascript·vue.js
其美杰布-富贵-李4 小时前
04 watch 与 Vue 响应式数据流
前端·javascript·vue.js
赵大仁6 小时前
生成式 UI 实战:用 JSON Schema + React 动态渲染 AI 界面
前端·ai·react·next.js·前端架构·生成式ui
kyriewen7 小时前
我排查了一个React内存泄漏——罪魁祸首是这3个被忽略的清理函数
前端·javascript·面试
IT_陈寒7 小时前
我又被JavaScript的隐式类型转换坑了
前端·人工智能·后端
其美杰布-富贵-李7 小时前
03 ref、reactive 与 computed 响应式数据
前端·javascript·vue.js