如何将课程与有条件的课程结合起来? Vue.js 2

Posted

技术标签:

【中文标题】如何将课程与有条件的课程结合起来? Vue.js 2【英文标题】:How can I combine class with class that has condition? vue.js 2 【发布时间】:2017-10-01 05:41:16 【问题描述】:

我的 vue 组件是这样的:

<template>
    <a class="btn btn-block" :class="[response == 'responseFound' ? ' btn-yellow' : ' btn-default']">
    ...
    </a>
 </template>

有效

但是,我想把它合并成一个类

我尝试这样:

<template>
    <a :class="'btn' [response == 'responseFound' ? ' btn-yellow' : ' btn-default'] ' btn-block'">
    ...
    </a>
 </template>

但它不起作用

我该如何解决?

【问题讨论】:

为什么要合并它们?这是正确的做法。此外,它不需要是一个数组,因为您只有一个要设置的类。 javascript写代码::class="'btn ' + ((response == 'responseFound') ? 'btn-yellow' : 'btn-default') + ' btn-block'"&gt; 是的,你为什么要合并,vue 为你做到了。您遵循的第一个过程是正确的。 【参考方案1】:

:class 或 v-bind:class 中的所有内容都是一个表达式。所以:

<template>
    <a :class="'btn' + ( response == 'responseFound' ? ' btn-yellow' : ' btn-default') + ' btn-block'">
    ...
    </a>
 </template>

【讨论】:

【参考方案2】:

您还可以在一个数组中组合不同的绑定样式:

<a :class="'btn btn-block', [response == 'responseFound' ? ' btn-yellow' : ' btn-default']">

【讨论】:

以上是关于如何将课程与有条件的课程结合起来? Vue.js 2的主要内容,如果未能解决你的问题,请参考以下文章

web前端技术基础课程讲解之Vue.js构建方式

物联网课程:物联网是什么?

1-1课程介绍

Vue.js仿锤子商城项目

Vue成大学核心课程

Vue.js 3.x 源码解析先导