vm.$attrs与inheritAttrs详解
1、 inheritAttrs
在vue官网的解释如下

个人理解:父组件A上引入子组件B,在B子组件上加上一些属性(class、style除外),这些属性能否在子组件B的根元素上继承,默认值为true,可以继承,false表示不可以继承
例子
//A组件
<template>
<div>
这是父组件
<erzi :name="name" :age="age" :love="name"></erzi>
</div>
</template> <script>
import erzi from '../common/erzi'
export default {
components: {
erzi
},
data(){
return {
name: 'jingjingyeye',
age: ,
love: "book"
}
}
}
</script>
B组件
<template>
<div>
这是子组件
</div>
</template> <script>
export default {
inheritAttrs: false
}
</script>
当B组件中inheritAttrs为false时

当B组件中inheritAttrs为true时

2、vm.$attrs
vue官网介绍如下

个人理解:在父组件上引入的子组件上的属性(class、style除外)的对象集合,与inheritAttrs的值无关,也可以用于父组件到子组件甚至孙组件的数据传递
例子如下
//父组件
<template>
<div>
这是父组件
<erzi :name="name" :age="age"></erzi>
</div>
</template>
<script>
import erzi from '../common/erzi'
export default {
components: {
erzi
},
data(){
return {
name: 'jingjingyeye',
age:
}
}
}
</script> <------------------------------->
//子组件
<template>
<div>
这是子组件
<sunzi v-bind="$attrs" :want="want" :love="love"></sunzi>
</div>
</template>
<script>
import sunzi from '../common/sunzi'
export default {
components: {
sunzi
},
data(){
return {
want: 'money',
love: "book"
}
},
mounted(){
console.log(this.$attrs) //{name: "jingjingyeye", age: 26}
}
}
</script> <------------------------------->
//孙组件
<template>
<div>
这是孙组件
</div>
</template>
<script>
export default {
mounted(){
console.log(this.$attrs) //{want: "money", love: "book", name: "jingjingyeye", age: 26}
}
}
</script>

vm.$attrs与inheritAttrs详解的更多相关文章
- BuautifulSoup4库详解
1.BeautifulSoup4库简介 What is beautifulsoup ? 答:一个可以用来从HTML 和 XML中提取数据的网页解析库,支持多种解析器(代替正则的复杂用法) 2.安装 p ...
- 自定义控件的自定义的属性attrs.xml下的declare-styleable中format详解
最近在摸索自定义控件,查找到一些自定义属性的一些资料,解决转载记载下来:看了此详解才方便理解! 我们在做项目的时候,由于android自带的属性不能满足需求,android提供了自定义属性的方法,其中 ...
- Android PopupWindow Dialog 关于 is your activity running 崩溃详解
Android PopupWindow Dialog 关于 is your activity running 崩溃详解 [TOC] 起因 对于 PopupWindow Dialog 需要 Activi ...
- 详解Paint的setXfermode(Xfermode xfermode)
一.setXfermode(Xfermode xfermode) Xfermode国外有大神称之为过渡模式,这种翻译比较贴切但恐怕不易理解,大家也可以直接称之为图像混合模式,因为所谓的“过渡”其实就是 ...
- Android不规则点击区域详解
Android不规则点击区域详解 摘要 今天要和大家分享的是Android不规则点击区域,准确说是在视觉上不规则的图像点击响应区域分发. 其实这个问题比较简单,对于很多人来说根本不值得做为一篇博文写出 ...
- Android中项目中各个文件夹的含义和用途详解
1.src:存放所有的*.java源程序. 2.gen:为ADT插件自动生成的代码文件保存路径,里面的R.java将保存所有的资源ID. 3.assets:可以存放项目一些较大的资源文件,例如:图片. ...
- 转载 《AngularJS》5个实例详解Directive(指令)机制
<AngularJS>5个实例详解Directive(指令)机制 大漠穷秋 本文整理并扩展了<AngularJS>这本书第六章里面的内容,此书近期即将由电子工业出版社出版,敬请 ...
- 【转】declare-styleable的使用(自定义控件) 以及declare-styleable中format详解
原文网址:http://www.cnblogs.com/622698abc/p/3348692.html declare-styleable是给自定义控件添加自定义属性用的 1.首先,先写attrs. ...
- Android 高级UI设计笔记07:RecyclerView 的详解
1. 使用RecyclerView 在 Android 应用程序中列表是一个非常重要的控件,适用场合非常多,如新闻列表.应用列表.消息列表等等,但是从Android 一出生到现在并没有非常 ...
随机推荐
- (转)Java中的String为什么是不可变的? -- String源码分析
背景:被问到很基础的知识点 string 自己答的很模糊 Java中的String为什么是不可变的? -- String源码分析 ps:最好去阅读原文 Java中的String为什么是不可变的 什 ...
- mysql创建用户并授权Repl_slave_priv和Repl_client_priv
CREATE USER 'test'@'localhost' IDENTIFIED BY 'test'; FLUSH PRIVILEGES; GRANT REPLICATION CLIENT ON * ...
- log sum of exponential
The so-called “log sum of exponentials” is a functional form commonly encountered in dynamic discret ...
- [转帖]Merkle树
Merkle树 https://www.jianshu.com/p/fc439a8fd0de 所谓比特币交易就是从一个比特币钱包向另一个中转账,每笔交易都有数字签名来保证安全.一个交易一旦发生那么就是 ...
- 数组转JSON对象
代码: function arrayToJson(arr){ var js={}; for(var i=0;i<arr.length;i++){ js[arr[i].name]=arr[i].v ...
- day33——进程的创建方式、pid、空间隔离、join方法、其他属性、守护进程
day33 进程创建的两种方式 在windows环境下,开启进程必须在______name______ == "______main______"下面 p.start(): 只是向 ...
- LeetCode977.Squares of a Sorted Array
题目 977. Squares of a Sorted Array Given an array of integers A sorted in non-decreasing order, retur ...
- RabbitMQ学习记录1
前言 我是在解决分布式事务的一致性问题时了解到RabbitMQ的,当时主要是要基于RabbitMQ来实现我们分布式系统之间对有事务可靠性要求的系统间通信的.关于分布式事务一致性问题及其常见的解决方案, ...
- CAS 5.x搭建常见问题系列(1).未认证的授权服务
错误内容 错误信息如下: 未认证授权的服务 CAS的服务记录是空的,没有定义服务.希望通过CAS进行认证的应用程序必须在服务记录中明确定义 错误原因 CAS 5.x 默认情况下不支持HTTP的客户端接 ...
- 关于Shareppoint客户端对象模型和Shareppoint根据内部名称获取字段值的随笔
实际上,每个SharePoint字段实际上有两个名称,一个是“标题”(Title,有时候也把它叫做“显示名称”),一个是“内部名称”(Internal Name).平时用户在列表视图界面上看到的,都是 ...