当前位置: 首页 > news >正文

非 Prop 的属性

概念

父组件传给子组件的属性,但该属性没有在子组件 props 属性里定义。

属性继承

非 Prop 的属性默认情况下会被子组件的根节点继承,非 prop 的属性会保存在子组件 $attrs 属性里。

举例

子组件 date-picker 如下

	<!-- 我是子组件 date-picker --><template><view class="date-picker"><input type="datetime-local" /></view></template>

父组件定义非 prop 属性 data-status,如下 

<date-picker data-status="activated"></date-picker>

子组件实际渲染如下

	<!-- 渲染 date-picker 组件 --><div class="date-picker" data-status="activated"><input type="datetime-local" /></div>

data-status 被应用在根节点(根节点:单文件组件中,template 标签的直接子元素就是根节点)上

非 prop 的属性会保存在子组件 $attrs 属性里。

事件继承

非 Prop 的方法会被子组件的根节点继承。

非 prop 的方法会保存在子组件 $attrs 属性里,名称上,@ 会变成 on ,比如 @click 会变成 onClick (vue3)。

温馨提示

1、非 prop 的方法的 this 依旧是指向父组件。

2、Vue 2 需要在被继承的节点上使用 v-on="$listeners" 才能继承父组件传过来的方法。

子组件指定节点继承

子组件设置 inheritAttrs: false,在需要继承属性(方法)的子组件节点上使用 v-bind="$attrs"。

温馨提示

vue2 的 $attrs 属性不包含父组件传过来的 class 和 style 属性,vue3 的 $attrs 包含父组件传过来的 class 和 style 属性。

http://www.lryc.cn/news/182753.html

相关文章:

  • 初识Java 12-3 流
  • 代码随想录算法训练营第42天|动态规划:01背包理论基础、动态规划:01背包理论基础(滚动数组)、416. 分割等和子集
  • (详解)Linux常见基本指令(1)
  • 紫光同创FPGA图像视频采集系统,提供2套PDS工程源码和技术支持
  • 第一章 函数 极限 连续(解题方法须背诵)
  • selenium +IntelliJ+firefox/chrome 环境全套搭配
  • CentOS 7 停止维护后如何平替你的生产系统?
  • 第81步 时间序列建模实战:Adaboost回归建模
  • 135.【JUC并发编程_01】
  • VC++创建windows服务程序
  • 连续爆轰发动机
  • 交通物流模型 | 基于时空注意力融合网络的城市轨道交通假期短时客流预测
  • 2.2.1 嵌入式工程师必备软件
  • 深入了解 RabbitMQ:高性能消息中间件
  • 【数据库——MySQL】(14)过程式对象程序设计——游标、触发器
  • 位移贴图和法线贴图的区别
  • 【typescript】面向对象(下篇),包含接口,属性的封装,泛型
  • 基于SpringBoot的视频网站系统
  • 23.3 Bootstrap 框架4
  • ESP32设备驱动-I2C-LCD1602显示屏驱动
  • vs工具箱在哪里找
  • uniapp 事件委托失败 获取不到dataset
  • windows系统下pycharm配置anaconda
  • 2023年CSP-J真题详解+分析数据
  • 10.3 调试事件转存进程内存
  • 深度学习实战基础案例——卷积神经网络(CNN)基于MobileNetV3的肺炎识别|第3例
  • 机器学习 面试/笔试题(更新中)
  • 【算法题】100019. 将数组分割成最多数目的子数组
  • commons-io工具类常用方法
  • 【Typescript】面向对象(上篇),包含类,构造函数,继承,super,抽象类