search.vue
2.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
<style>
</style>
<template>
<div>
<banner></banner>
<div class="infor container clearfix">
<div class="infor-navbar">
<leftnav></leftnav>
</div>
<div class="infor-borad">
<div class="infor-list-header">
<h4>搜索关键词”<b>{{search.searchWord}}</b>“结果一共{{total}}条</h4>
</div>
<ul class="ullist1">
<li v-for="item in list">
<i>{{ gettypetitle(item.typecode) }}</i>
<a v-link="{path:'/show/'+item.typecode+'/'+item.guid}">
{{item.title}}
<span>{{item.pubdate}}</span>
</a>
</li>
</ul>
<pagination
@page-change="getData"
:class="['m-20-0']"
:page-no.sync="search.page"
:total-pages.sync="search.totalPages">
</pagination>
</div>
</div>
</div>
</template>
<script>
module.exports={
data:function(){
return {
list:[],
search: {
size: 20,
page: 1,
totalPages: 0,typecode:0,id:0,searchWord:''
},typelist:[],total:0
}
},methods:{
getData:function(casetxt){//请求数据
if(casetxt){
this.search.page=1;
}
this.search.searchWord=this.$route.params.text;
Ajax.get('/cms/public_act_getAll?size='+this.search.size+'&page='+this.search.page+'&searchWord='+this.search.searchWord).then(function(res){
var result=res.data;
console.log('all',result);
if(result.data){
this.$set('list',result.data.list);
this.search.totalPages = result.data.totalPages || 0;
this.total=result.data.total;
}
}.bind(this))
},gettype:function(){
Ajax.get('/cms/typelist').then(function(res){
var result=res.data;
console.log('typelist',result);
if(result.data){
this.$set('typelist',result.data);
}
this.getData();
}.bind(this))
},gettypetitle:function(id){
var a=''
for(var i=0;i<this.typelist.length;i++){
if(this.typelist[i].id==id){
a=this.typelist[i].title;
}
}
return a;
}
},route:{
activate:function(){
this.gettype();
}
},watch:{
'$route.path':function(val){
if(val.indexOf('search')>-1){
this.getData();
}
}
}
}
</script>