2016-09-21 67 views
1

我想添加bootstrap類(成功,正在減少...)錶行取決於propertys(overallStatus)值。vue.js如何添加類到錶行取決於屬性值

我該如何在下面的代碼中實現這個功能性?

在此先感謝!

<div id="people" class="col-md-12">  
    <v-client-table :data="tableData" :columns="columns" :options="options"></v-client-table> 
</div> 

Vue.use(VueTables.client, { 
    perPage: 50, 
    skin: 'table table-condensed' 
}); 

new Vue({ 
    el: "#people", 
    ready: function() { }, 
    methods: {}, 
    data: { 
     columns: ['deviceType', 'reasonForStatus', 'ip', 'monitorIsOn', 'freeSpace', 'cpuUsage', 'availableRam', 'statusTime'], 
     options: { 
      dateColumns: ['statusTime'], 
      headings: { 
       deviceType: 'Device Type', 
       ip: 'Device Ip', 
       reasonForStatus: 'ReasonForStatus', 
       freeSpace: 'Free Space', 
       cpuUsage: 'CPU Usage', 
       availableRam: 'Available Ram', 
       statusTime: 'Log Time' 
      }, 
      templates: { 
       deviceType: function (row) { 
        return row == 0 ? "Stander" : "Monitor"; 
       }, 
       availableRam: function (row) { 
        return row.availableRam + " mb."; 
       }, 
       freeSpace: function (row) { 
        return row.freeSpace + " %"; 
       }, 
       cpuUsage: function (row) { 
        return row.cpuUsage + " %"; 
       }, 
      }, 

     }, 
     selectedLetter: '', 
     tableData: tableItems, 
    } 
}); 
+0

https://vuejs.org/guide/class-and-style.html – GONG

+0

我知道可以使用v-bind:class,但在給定的標記中沒有行標記來使用i,因爲它是在某處創建的在vue框架中。 –

回答

2

您需要使用v-bind:class指令(或短版:class)。看看docs here

例子:

data: function() { 
    return: { 
    error: true, 
    errorType: 'alert-error' 
    } 
} 

<template> 
    <div class="alert" :class="{ errorType: error }"</div> 
</template> 

<!-- or static text assignment --> 

<template> 
    <div class="alert" :class="{ 'alert-error': error }"</div> 
</template> 

這兩者會產生

<div class="alert alert-error"></div> 

在同一時間,你可以像這樣綁定多個類:

<template> 
    <div :class="{ 'class1 class2 class3': error }"</div> 
</template> 

<template> 
    <div :class="['class1', 'class2', error ? 'class3' : 'class4']"></div> 
</template> 
+0

你能詳細說明我到底可以如何將它應用到我的表格行中) –

+1

@KimBayAndersen在你的''v-client-table>'組件中,​​你需要一個邏輯並應用你想要的樣式。例如''或''或任何您的正確課程的邏輯是。 –