关于tab标签切换问题:
这是SemanticUI上的tab组件,拿来就用了
原始代码
$('.menu .item') .tab() ;
<div class\="ui top attached tabular menu"\>
<a class\="active item" data-tab\="first"\>First</a\>
<a class\="item" data-tab\="second"\>Second</a\>
<a class\="item" data-tab\="third"\>Third</a\>
</div\>
<div class\="ui bottom attached active tab segment" data-tab\="first"\> First </div\>
<div class\="ui bottom attached tab segment" data-tab\="second"\> Second
</div\> <div class\="ui bottom attached tab segment" data-tab\="third"\> Third </div\>
现在基于vue,后台传递过来数据,通过v-for遍历出分类数据,点击分类名称,能切换下面对应的div
现在是这种样子:
局部:
<div id\="workArea" class\="m-container m-padded-tb-big"\>
<div class\="ui top attached tabular menu"\>
<a v-for\="c in categories" class\="active item" data-tab\="first"\>{{ c.name}}</a\>
</div\>
<div class\="ui bottom attached active tab segment" data-tab\="first"\>
First
</div\>
</div\>
下面的div代码该如何写呢,尝试过很多,但最终都失败了。
这是全部代码:
<!DOCTYPE html\>
<html xmlns:th\="http://www.w3.org/1999/xhtml"\>
<head\>
<meta charset\="utf-8"\>
<title\>工具</title\>
<link rel\="stylesheet" type\="text/css" href\="../../static/css/me.css" th:href\="@{/css/me.css}"\>
<link rel\="stylesheet" href\="https://cdn.jsdelivr.net/semantic-ui/2.2.4/semantic.min.css"\>
</head\>
<body style\="background: #439B78;"\>
<div style\="height: 20px;"\></div\>
<div id\="workArea" class\="m-container m-padded-tb-big"\>
<div class\="ui top attached tabular menu"\>
<a v-for\="c in categories" class\="active item" data-tab\="first"\>{{ c.name}}</a\>
</div\>
<div class\="ui bottom attached active tab segment" data-tab\="first"\>
First
</div\>
</div\>
<script src\="../../static/js/jquery.min.js" th:src\="@{/js/jquery.min.js}"\></script\>
<script src\="../../static/js/vue.min.js" th:src\="@{/js/vue.min.js}"\></script\>
<script src\="../../static/js/axios.min.js" th:src\="@{/js/axios.min.js}"\></script\>
<script src\="https://cdn.jsdelivr.net/npm/semantic-ui@2.4.2/dist/semantic.min.js"\></script\>
<script type\="text/javascript"\>
$(function(){
var data1 \= {
uri: 'forekit',
categories: \[\]
};
var vue \= new Vue({
el: '#workArea',
data: data1,
mounted:function(){
this.load();
},
methods:{
load: function() {
var url \= this.uri;
axios.get(url).then(function(response){
vue.categories \= response.data;
});
}
}
});
$('.menu .item').tab();
});
</script\>
</body\>
</html\>
data
,也就是你代码中data1
内加个变量active
记录当前点击项的值,在下面展示出来即可template
这是基础问题,建议多看几遍文档