一.父组件代码
<template><div id="app"><h1 class="box"><pageName> </pageName></h1></div>
</template><script>
import pageName from "../src/components/pageName.vue";
export default {data() {return {imageUrl: "",};},methods: {},components: {pageName,},
};
</script><style lang="less" scoped></style>>
.box{color: red;
}
</style>
二.子组件代码
<template><div class=""><h1>我是子页面</h1></div>
</template><script>
export default {name: "",data() {return {};},components: {},
};
</script><style scoped lang="less"></style>
三.此时父组件和子组件都有scope属性时候的效果
文字并没有编程红色,scope属性能保证当前页面的属性不被污染。
此时我们可以利用deep属性进行穿透
重写写过后的代码
穿透子组件,本来子组件有独立的作用域
效果
四.穿透element-ui里面的组件
代码:
效果图
五.样式穿透案例
<template><div class=""><el-badge :value="12" class="item"><el-button size="small">评论</el-button></el-badge></div>
</template><script>
export default {name: "",data() {return {};},components: {},
};
</script><style scoped lang="less">
::v-deep .el-badge {.el-button {color: pink;}
}
</style>