gpt4 book ai didi

vue.js - vuejs组件的样式是否对其他组件是全局的

转载 作者:搜寻专家 更新时间:2023-10-30 22:34:47 25 4
gpt4 key购买 nike

我有两个页面:

  1. search.php 包含一个名为 search.vue
  2. 的 vuejs 组件
  3. person.php 包含另一个名为 person.vue 的组件。

search.vue 中,我有指向 person.php 的链接。

为什么 search.vue 组件中设置的样式也会影响 person.vue 中的 DOM?

我的 search.vue 组件中的 style 标签:

<style>
.row {
background-color: red;
}
</style>

除了通过 href 链接打开 person.php 页面外,我无法连接这两个 View 。

最佳答案

在 Vue 单文件组件的 style 标签中定义的样式将被编译为单个文件,影响所有组件。

但是,您可以在组件的 style 标签上指定一个 scoped 属性:

<style scoped>
.row {
background-color: red;
}
</style>

来自Documentation :

The optional scoped attribute automatically scopes this CSS to your component by adding a unique attribute (such as data-v-21e5b78) to elements and compiling .list-container:hover to something like .list-container[data-v-21e5b78]:hover.


请注意,scoped 属性是单文件组件的 Vue 特性,不同于一般的 scoped style tag attribute ,效果类似,但目前仅 Firefox 支持。

关于vue.js - vuejs组件的样式是否对其他组件是全局的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44546592/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com