Vue中inheritAttrs的使用实例详解


Posted in Vue.js onDecember 31, 2020

今天举一个例子解释一下inheritAttrs的使用

先看代码

<body>
		<div id="app" class="vueclass">
			<my-com title="标题" wx-attr1="未定义属性1" wx-attr2="未定义属性2"></my-com>
		</div>
		<script type="text/javascript">
			Vue.component("my-com",{
				props:{
					title:String,
				},
				inheritAttrs:false,
				template:`
					<div wx-attr1="hello" >
						<h1>{{title}}</h1>
					</div>
				`,
			})
			const App = new Vue({
				el:"#app",
				data:{
					
				},
				methods:{
					
				}
			})
		</script>
	</body>

当inheritAttrs的值为false时,自定义属性是插入不到我们的组件中的,结果如下

Vue中inheritAttrs的使用实例详解

当inheritAttrs的值为true时,自定义属性可以插入到我们的组件中,并且会覆盖掉在组件中相同未定义属性名称的值,结果如下

Vue中inheritAttrs的使用实例详解

但在组件中定义的class属性和style属性,使用inheritAttrs属性并不能阻碍class属性和style属性传到模板中,如果模板中也存在class属性和style属性,这样属性会叠加到一起

结果如下

Vue中inheritAttrs的使用实例详解

还有一种情况,先看代码

<body>
		<div id="app" class="vueclass">
			<my-com title="标题" wx-attr1="未定义属性1" wx-attr2="未定义属性2" class="wxClass" style="color:red"></my-com>
		</div>
		<script type="text/javascript">
			Vue.component("my-com",{
				props:{
					title:String,
				},
				inheritAttrs:,
				template:`
					<div wx-attr1="hello" class="div1" style="width:500px" v-bind="$attrs">
						<h1>{{title}}</h1>
					</div>
				`,
			})
			const App = new Vue({
				el:"#app",
				data:{
					
				},
				methods:{
					
				}
			})
		</script>
	</body>

当模板里绑定v-bind="$attrs"时,inheritAttrs为true时,自定义属性可以插入到我们的组件中,并且会覆盖掉在组件中相同未定义属性名称的值,结果如下

Vue中inheritAttrs的使用实例详解

当模板里绑定v-bind="$attrs"时,inheritAttrs为false时,自定义属性可以插入到我们的组件中,但不会覆盖掉在组件中相同未定义属性名称的值,结果如下

Vue中inheritAttrs的使用实例详解

当模板里绑定v-bind="$attrs"时,并不会影响class属性与style属性,组件里的值依然会叠加到模板里

到此这篇关于Vue中inheritAttrs的使用的文章就介绍到这了,更多相关Vue inheritAttrs使用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Vue.js 相关文章推荐
vue 插槽简介及使用示例
Nov 19 Vue.js
Vue实现图书管理小案例
Dec 03 Vue.js
如何实现vue的tree组件
Dec 03 Vue.js
vue3.0自定义指令(drectives)知识点总结
Dec 27 Vue.js
vue中配置scss全局变量的步骤
Dec 28 Vue.js
如何使用RoughViz可视化Vue.js中的草绘图表
Jan 30 Vue.js
如何理解Vue前后端数据交互与显示
May 10 Vue.js
vue如何批量引入组件、注册和使用详解
May 12 Vue.js
Vue自定义铃声提示音组件的实现
Jan 22 Vue.js
Vue3如何理解ref toRef和toRefs的区别
Feb 18 Vue.js
vue里使用create, mounted调用方法
Apr 26 Vue.js
vue导入.md文件的步骤(markdown转HTML)
Dec 31 #Vue.js
vue-cli4.0多环境配置变量与模式详解
Dec 30 #Vue.js
基于Vue3.0开发轻量级手机端弹框组件V3Popup的场景分析
Dec 30 #Vue.js
SpringBoot+Vue 前后端合并部署的配置方法
Dec 30 #Vue.js
vue中实现点击空白区域关闭弹窗的两种方法
Dec 30 #Vue.js
梳理一下vue中的生命周期
Dec 30 #Vue.js
Vue实现简易购物车页面
Dec 30 #Vue.js
You might like
一拳超人中怪人协会钦定! S级别最强四人!
2020/03/02 日漫
SSI指令
2006/11/25 PHP
php下防止单引号,双引号在接受页面转义的设置方法
2008/09/25 PHP
10条PHP高级技巧[修正版]
2011/08/02 PHP
APACHE的AcceptPathInfo指令使用介绍
2013/01/18 PHP
php之Memcache学习笔记
2013/06/17 PHP
PHP中VC6、VC9、TS、NTS版本的区别与用法详解
2013/10/26 PHP
在Windows XP下安装Apache+MySQL+PHP环境
2015/02/22 PHP
javascript 常用关键字列表集合
2007/12/04 Javascript
XMLHTTPRequest的属性和方法简介
2010/11/23 Javascript
分析Node.js connect ECONNREFUSED错误
2013/04/09 Javascript
jquery小火箭返回顶部代码分享
2015/08/19 Javascript
有关easyui-layout中的收缩层无法显示标题的解决办法
2016/05/10 Javascript
通过V8源码看一个关于JS数组排序的诡异问题
2017/08/14 Javascript
详解如何使用微信小程序云函数发送短信验证码
2019/03/13 Javascript
VUE使用axios调用后台API接口的方法
2020/08/03 Javascript
解决vue项目运行npm run serve报错的问题
2020/10/26 Javascript
用vue写一个日历
2020/11/02 Javascript
JavaScript实现滑块验证解锁
2021/01/07 Javascript
一步步教你用Python实现2048小游戏
2017/01/19 Python
Django框架 Pagination分页实现代码实例
2019/09/04 Python
python 实现矩阵填充0的例子
2019/11/29 Python
python3使用Pillow、tesseract-ocr与pytesseract模块的图片识别的方法
2020/02/26 Python
Pandas之read_csv()读取文件跳过报错行的解决
2020/04/21 Python
微信浏览器左上角返回按钮拦截功能
2017/11/21 HTML / CSS
Html5移动端网页端适配(js+rem)
2021/02/03 HTML / CSS
英国领先的酒类网上商城:TheDrinkShop
2017/03/16 全球购物
AURALog面试题软件测试方面
2013/10/22 面试题
函授毕业生自我鉴定
2013/11/06 职场文书
电子商务专业个人的自我评价
2013/12/19 职场文书
物业工作计划书
2014/01/10 职场文书
中班上学期个人总结
2015/02/12 职场文书
学生会生活部工作总结2015
2015/03/31 职场文书
2015年公务员工作总结
2015/04/24 职场文书
初中数学教学随笔
2015/08/15 职场文书
一文了解MySQL二级索引的查询过程
2022/02/24 MySQL