如果你想在 Vue.js 中动态设置元素的 class 类名,你可以使用以下两种主要方式:

  1. 绑定一个动态的 class 对象:你可以使用 v-bind 或简写的 : 来绑定一个包含类名的对象,其中类名的键是类名字符串,值是一个布尔值或计算属性,用于确定是否应该添加该类名。
<template>
  <div v-bind:class="classObject"></div>
</template>

<script>
export default {
  data() {
    return {
      isActive: true,
      isError: false,
    };
  },
  computed: {
    classObject() {
      return {
        active: this.isActive,
        error: this.isError,
      };
    },
  },
};
</script>

上面的示例中,classObject 计算属性根据 isActiveisError 的值来动态生成一个类名对象,然后通过 v-bind:class 绑定到元素上。当 isActivetrue 时,会添加 active 类,当 isErrortrue 时,会添加 error 类。

  1. 使用数组语法:你也可以使用数组语法将多个类名组合在一起。这对于根据条件动态设置类名很有用。
<template>
  <div v-bind:class="[isActive ? 'active' : '', isError ? 'error' : '']"></div>
</template>

<script>
export default {
  data() {
    return {
      isActive: true,
      isError: false,
    };
  },
};
</script>

在这个示例中,我们使用数组语法将类名字符串组合在一起。如果 isActivetrue,则添加 active 类名;如果 isErrortrue,则添加 error 类名。

这两种方法都允许你根据数据的状态或条件动态设置元素的类名,使你能够根据需要添加或删除类名。选择哪种方法取决于你的具体需求和代码结构。

GitHub 加速计划 / vu / vue
207.55 K
33.66 K
下载
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:3 个月前 )
73486cb5 * chore: fix link broken Signed-off-by: snoppy <michaleli@foxmail.com> * Update packages/template-compiler/README.md [skip ci] --------- Signed-off-by: snoppy <michaleli@foxmail.com> Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 5 个月前
e428d891 Updated Browser Compatibility reference. The previous currently returns HTTP 404. 5 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐