久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

Vue $attrs & inheritAttr實(shí)現(xiàn)button禁用效果案例

瀏覽:3日期:2022-10-20 18:58:07

components/Button.vue

<template> <div> <button :disabled='$attrs.disabled'>點(diǎn)擊</button> </div></template> <script> export default { inheritAttrs: false, }</script> <style scoped> </style>

App.vue

<template> <div id='app'> <Parent></Parent> <Button disabled></Button> </div></template>

<script>import Parent from ’./components/Parent’import Button from ’./components/Button’; export default { name: ’App’, components: { Parent, Button }}</script>

<style>#app { font-family: Avenir, Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-align: center; color: #2c3e50; margin-top: 60px;}</style>

效果截圖1-inheritAttrs默認(rèn)true:

Vue $attrs & inheritAttr實(shí)現(xiàn)button禁用效果案例

效果截圖2-inheritAttrs=false:

Vue $attrs & inheritAttr實(shí)現(xiàn)button禁用效果案例

補(bǔ)充知識:vue中使用inheritAttrs實(shí)現(xiàn)組件的擴(kuò)展性

1、首先我們創(chuàng)建一個input組件

<template> <div class='inputCom-wrap'> <input v-bind='$attrs' /> </div></template> <script lang='ts'>import { defineComponent } from ’vue’ export default defineComponent({ inheritAttrs:false,//不希望根直接繼承特性,而是使用$attrs自定義繼承,當(dāng)前組件的根就是inputCom-wrap setup () { return {} }})</script> <style scoped> </style>

2、使用組件的時候,隨便增加一些屬性,如

<inputCom type='text' class='input-a'></inputCom>

<inputCom type='password' class='input-b'></inputCom>

3、查看最終的渲染結(jié)果為(與props不會沖突)

Vue $attrs & inheritAttr實(shí)現(xiàn)button禁用效果案例

以上這篇Vue $attrs & inheritAttr實(shí)現(xiàn)button禁用效果案例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 南城县| 驻马店市| 搜索| 吴堡县| 东辽县| 上杭县| 惠东县| 瑞金市| 焦作市| 延庆县| 横山县| 思南县| 余姚市| 紫阳县| 沈阳市| 夹江县| 寻乌县| 蓬安县| 镇雄县| 高淳县| 合阳县| 西华县| 德钦县| 桦川县| 全南县| 弋阳县| 扶绥县| 聂荣县| 南召县| 资兴市| 合江县| 姚安县| 扶绥县| 涟水县| 广灵县| 松桃| 连山| 南岸区| 长治市| 双峰县| 罗平县|