我正在使用vue组件(cli .vue)

仅当某些 bool 值为true/false时,我才需要显示样式表。
最简单的解释是:
myVar == false 时,组件未加载样式。

<style v-if="myVar" lang="scss"> @import 'mystyles.css' </style>

我知道那样做是不可能的,但是我如何做“类似”的事情?

如果用户要使用默认样式,则需要在vue中加载我的样式,否则,我需要防止它们被加载。

我的组件在页面中使用过一次,但没有多次使用,但是使用/不使用默认css的条件也必须适用于所有组件,因此这里没有问题。

有任何想法吗?
感谢您的帮助或任何提前的想法:)

最佳答案

使用SCSS,您可以将该CSS包装在一个类中,如下所示:

<style lang="scss">

.conditional-class {
    @import 'stylesheet.scss';
}

</style>

然后对该类使用Vue类绑定(bind):
<div :class="{ conditional-class: true }">
    ...
</div>

这样,除非该类在该元素上处于事件状态,否则CSS将不适用。如果您希望样式应用于整个应用程序,则将该类放在应用程序的根元素上。

10-06 04:21
查看更多