У меня есть html, использующий Vue.js здесь:
<div id = "app">
<ul class = "navbar-nav">
<li class = "nav-item" v-for = "tab in tabs">
<a href = "#" class = "nav-link">{{ tab.name }}</a>
</li>
</ul>
</div>
У меня здесь есть javascript:
var app = new Vue({
el: '#app',
data: {
tabs: [
{ name: "Home", active: "" },
{ name: "Challenges", active: "active" },
{ name: "Scoreboard", active: "" },
{ name: "About", active: "" }
]
}
});
Я хочу установить для класса tabs.active, поскольку я использую бутстрап. Как я могу это сделать?
Обновил выше.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Добавлять
v-bind:class = "tab.active"
Итак, ваш код должен выглядеть так:
var app = new Vue({
el: '#app',
data: {
tabs: [{
name: "Home",
active: ""
},
{
name: "Challenges",
active: "active"
},
{
name: "Scoreboard",
active: ""
},
{
name: "About",
active: ""
}
]
}
});<script src = "https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id = "app">
<ul class = "navbar-nav">
<li class = "nav-item" v-for = "tab in tabs" v-bind:class = "tab.active">
<a href = "#" class = "nav-link">{{ tab.name }}</a>
</li>
</ul>
</div>Используйте привязка классов следующим образом:
<li class = "nav-item" :class = "{active: tab.active === 'active'}" v-for = "tab in tabs">
new Vue({
el: '#app',
data: {
tabs: [
{ name: "Home", active: "" },
{ name: "Challenges", active: "active" },
{ name: "Scoreboard", active: "" },
{ name: "About", active: "" }
]
}
});.active .nav-link {
color: white;
background: blue;
}<script src = "https://unpkg.com/[email protected]"></script>
<div id = "app">
<ul class = "navbar-nav">
<li class = "nav-item" :class = "{active: tab.active === 'active'}" v-for = "tab in tabs">
<a href = "#" class = "nav-link">{{ tab.name }}</a>
</li>
</ul>
</div>
Где элемент с идентификатором приложения?