tanyanfei 3 years ago
parent
commit
14e80dad2e

+ 5 - 2
app.json

@@ -2,7 +2,10 @@
   "pages": [
     
     "pages/index/index",
+    "pages/knowledge/knowledge",
     "pages/search/search",
+    "pages/learning/learning",
+    
     "pages/searchList/searchList",
     "pages/wenzhang/wenzhang",
     "pages/mine/mine",
@@ -11,11 +14,11 @@
     "pages/order/order",
     "pages/eventDetail/eventDetail",
     "pages/order/hotel",
-    "pages/learning/learning",
+   
     "pages/conference/conference",  
     "pages/collect/collect",
     
-    "pages/knowledge/knowledge",
+   
     "pages/list/list",
     "pages/actDetail/actDetail",
     "pages/jInfo/jInfo",

+ 1 - 1
pages/conference/conference.wxml

@@ -12,7 +12,7 @@
   {{info.desc}}
 </view>
 
-<view class="title">活动内容:</view>
+<view class="title" wx:if='{{info.content}}'>活动内容:</view>
 <view class="content">
   <rich-text nodes='{{info.content}}'></rich-text>
 </view>

+ 1 - 1
pages/eventDetail/eventDetail.js

@@ -64,7 +64,7 @@ Page({
         that.setData({
           info: info
         })
-        that.init()
+        // that.init()
       },
       fail: function () {
         wx.hideLoading();

+ 5 - 2
pages/eventDetail/eventDetail.wxml

@@ -29,8 +29,11 @@
 
 <view>
     <view class="tt">会议内容</view>
-    <editor style="margin:10px 0;padding:0 10px;" read-only="{{true}}" id="editor"  class="ql-container">
-    </editor>
+    <!-- <editor style="margin:10px 0;padding:0 10px;" read-only="{{true}}" id="editor"  class="ql-container">
+    </editor> -->
+    <view class="content">
+      <rich-text nodes='{{info.content}}'></rich-text>
+    </view>
 </view>
 
                               

BIN
pages/images/no.png


+ 35 - 10
pages/index/index.js

@@ -158,7 +158,7 @@ Page({
   }, 
   //主办单位
   getorg:function(){
-    console.log(this.data.page_org)
+    wx.showNavigationBarLoading()
     const organizers=this.data.organizers;
     wx.request({
       url: host + '/api/index/organizers',
@@ -185,6 +185,7 @@ Page({
   },
   //领域期刊
   getsub:function(){
+    wx.showNavigationBarLoading()
     const subjects=this.data.subjects;
     wx.request({
       url: host + '/api/index/subjects',
@@ -211,47 +212,71 @@ Page({
   },
   search:function(){
     wx.navigateTo({
-      url: '../search/search',
+      url: '../searchList/searchList',
     })
   },
   //置顶
   top: function(e){
-    var that=this;
+    var type = e.target.dataset.type;
       wx.request({
         url: host+'/api/index/totop',
         method:'PUT',
         data:{
           id:e.target.dataset.id,
-          type: e.target.dataset.type,
+          type: type,
           uid:this.data.uid,
           action:'do'
         },
-        success:function(res){
+        success: res=>{
           wx.showToast({
             title: '置顶成功',
             icon:'none'
           })
-          that.getData(1)
+          if (type == 'organizer'){
+            this.setData({
+              organizers:[],
+              page_org:1
+            })
+            this.getorg()
+          }else{
+            this.setData({
+              subjects: [],
+              page_sub: 1
+            })
+            this.getsub()
+          }
         }
       })
   },
   cancel_top: function (e) {
-    var that = this;
+    var type = e.target.dataset.type;
     wx.request({
       url: host + '/api/index/totop',
       method: 'PUT',
       data: {
         id: e.target.dataset.id,
-        type: e.target.dataset.type,
+        type: type,
         uid: this.data.uid,
         action:'cancel'
       },
-      success: function (res) {
+      success: res=> {
         wx.showToast({
           title: '已取消',
           icon: 'none'
         })
-        that.getData(1)
+        if (type == 'organizer') {
+          this.setData({
+            organizers: [],
+            page_org: 1
+          })
+          this.getorg()
+        } else {
+          this.setData({
+            subjects: [],
+            page_sub: 1
+          })
+          this.getsub()
+        }
       }
     })
   },

+ 1 - 1
pages/journalDetail/journalDetail.js

@@ -41,7 +41,7 @@ Page({
     })
   },
   weixin:function(){
-    if (this.data.info.qrcode){
+    if (this.data.info.qrcode || this.data.info.wxcode){
       this.setData({
         show: true
       })

+ 8 - 4
pages/journalDetail/journalDetail.wxml

@@ -39,7 +39,7 @@
 <view class="part" wx:if='{{info.over_activitys.length>0}}'>
               <view class="title">活动回顾   <navigator  url='../huodong/huodong?id={{info.id}}&type=over'>查看更多</navigator></view>
               <view class="hd">
-                <navigator class="list" wx:for='{{info.over_activitys}}' wx:key="over_activitys{{index}}">
+                <navigator url="../conference/conference?id={{item.id}}"  class="list" wx:for='{{info.over_activitys}}' wx:key="over_activitys{{index}}">
                       <image   src="{{item.img}}"></image>
                       <view>
                           <view class="tt">{{item.name}}  </view>
@@ -53,7 +53,7 @@
 <view class="part" wx:if='{{info.pre_activitys.length>0}}'>
               <view class="title">活动预告   <navigator url='../huodong/huodong?id={{info.id}}&type=pre'>查看更多</navigator></view>
               <view class="hd">
-                <navigator class="list" wx:for='{{info.pre_activitys}}' wx:key="pre_activitys{{index}}">
+                <navigator url="../conference/conference?id={{item.id}}"  class="list" wx:for='{{info.pre_activitys}}' wx:key="pre_activitys{{index}}">
                       <image  src="{{item.img}}"></image>
                       <view>
                           <view class="tt">{{item.name}}  </view>
@@ -75,11 +75,15 @@
               <view style="color:#999;">微信号:{{info.wxcode}}</view>
             </view>
         </view>
-        <image bindtap="view" class="m" mode="widthFix" src="{{info.qrcode}}"></image>
-        <view class="b">
+        <image wx:if='{{info.qrcode}}' bindtap="view" class="m" mode="widthFix" src="{{info.qrcode}}"></image>
+        <image wx:else class="m" mode="widthFix" src="../images/no.png"></image>
+        <view class="b" wx:if='{{info.qrcode}}'>
             <text>1.扫描二维码,关注期刊公众号</text>
             <text>2.点击图片放大后长按可保存</text>
         </view>
+        <view class="b" wx:else>
+            <text>抱歉,本公众号暂未上传二维码</text>
+        </view>
     </view>
 </view>
 

+ 14 - 2
pages/knowledge/knowledge.js

@@ -20,7 +20,7 @@ Page({
   /**
    * 生命周期函数--监听页面加载
    */
-  onShow: function () {
+  onLoad: function () {
     this.setData({
       list: [],
       total: 0,
@@ -30,7 +30,16 @@ Page({
   },
   search:function(e){
     this.setData({
-      keyword: e.detail.value
+      keyword: e.detail.value,
+      list:[],
+      page:1
+    })
+    this.getData();
+  },
+  search1: function (e) {
+    this.setData({
+      list: [],
+      page: 1
     })
     this.getData();
   },
@@ -41,7 +50,9 @@ Page({
   },
   check:function(e){
     this.setData({
+      list:[],
       show: 0,
+      page:1,
       index:e.target.dataset.id
     })
     this.getData();
@@ -75,6 +86,7 @@ Page({
         if(res.data.code == 0){
           const list=res.data.data.list;
           for(let i=0;i<list.length;i++){
+            list[i].name = list[i].name.replace(this.data.keyword, '<span style="color:#3780CD;">' + this.data.keyword + '</span>')
             _list.push(list[i])
           }
           this.setData({

+ 2 - 2
pages/knowledge/knowledge.wxml

@@ -1,7 +1,7 @@
 <!--pages/knowledge/knowledge.wxml-->
 <view class="search">
     <input bindinput='search' placeholder-style='color:#C8C8C8;' placeholder="输入名称/关键字搜索"></input>
-    <image  mode="widthFix" src="../images/search.png"></image>
+    <image bindtap="search"  mode="widthFix" src="../images/search.png"></image>
 </view>
 
 <view class="menu">
@@ -28,7 +28,7 @@
           <navigator url="../actDetail/actDetail?id={{item.id}}" class="list" wx:for='{{list}}' wx:key="journals{{index}}">
               <image   src="{{item.img}}"></image>
               <view>
-                  <view class="title">{{item.name}}</view>
+                  <view class="title"> <rich-text nodes="{{item.name}}"></rich-text></view>
                   <view class="ly"> 
                               <view>
                                   <text>2018.5.28</text>

+ 10 - 2
pages/learning/learning.js

@@ -31,7 +31,7 @@ Page({
   /**
    * 生命周期函数--监听页面加载
    */
-  onShow: function () {
+  onLoad: function () {
     this.setData({
       conference: [],
       over: [],
@@ -206,7 +206,15 @@ Page({
   check: function (e) {
     this.setData({
       show: 0,
-      
+      conference: [],
+      over: [],
+      pre: [],
+      page_0: 1,
+      page_1: 1,
+      page_2: 1,
+      total_0: 0,
+      total_1: 0,
+      total_2: 0,
       index: e.target.dataset.id
     })
     this.getData();

+ 106 - 14
pages/search/search.js

@@ -1,4 +1,4 @@
-// pages/search/search.js
+// pages/searchList/searchList.js
 const app = getApp()
 var host = app.globalData.host;
 Page({
@@ -7,37 +7,130 @@ Page({
    * 页面的初始数据
    */
   data: {
-    info:{},
-    keyword:''
+    act: 0,
+    data: [],
+    keyword: '',
+    type: '',
+    left: 0,
+    top: 0,
+    title: '',
+    value: '',
+    list: [],
+    page: 1,
+    loading: true
   },
 
   /**
    * 生命周期函数--监听页面加载
    */
   onLoad: function (options) {
-    var that=this;
+    // options.keyword='科学'
+
+    this.setData({
+      type: options.type,
+      title: '相关'+options.title
+    })
+
+
+  },
+  getData: function () {
+    wx.showNavigationBarLoading()
     wx.request({
-      url: host + '/api/search/default',
+      url: host + '/api/search',
       method: 'GET',
-      success: function (res) {
-        that.setData({
-          info:res.data.data
+      data: {
+        keyword: this.data.keyword,
+        type: this.data.type,
+        page_size: 20,
+        page: this.data.page
+      },
+      success: res => {
+        wx.hideNavigationBarLoading()
+
+          let list = this.data.list, data = res.data.data[0].list;
+          if (data.length <= 0) {
+            this.setData({
+              loading: false
+            })
+            return;
+          }
+          for (let i = 0; i < data.length; i++) {
+            data[i].name = data[i].name.replace(this.data.keyword, '<span style="color:#3780CD;">' + this.data.keyword + '</span>')
+
+            list.push(data[i])
+          }
+          this.setData({
+            title: res.data.data[0].name,
+            value: res.data.data[0].value,
+            list: list
+          })
+
+
+      },
+      fail: function () {
+        wx.hideLoading();
+        wx.showToast({
+          title: '服务器开小差啦!',
+          icon: 'none'
         })
       }
     })
   },
-  search:function(){
-    wx.navigateTo({
-      url: '../searchList/searchList?keyword=' + this.data.keyword,
+  next: function () {
+    if (this.data.loading) {
+      this.setData({
+        page: this.data.page + 1
+      })
+      this.getData()
+    }
+  },
+  search: function () {
+    this.setData({
+      list:[],
+      page:1,
+      top: 0
     })
+    this.getData();
   },
   inputChange: function (e) {
     this.setData({
-      keyword: e.detail.value
+      keyword: e.detail.value,
+      page: 1,
+      list: [],
+      top: 0
     })
+    this.getData();
 
   },
-  /**
+  tab: function (e) {
+    var i = e.target.dataset.id;
+    var array = ['', 'organizer', 'article', 'conference', 'journal', 'subject'];
+    this.setData({
+      type: array[i],
+      act: i,
+      top: 0,
+      list: [],
+      page: 1,
+      loading: true
+    })
+    this.getData()
+  },
+  more: function (e) {
+    var value = e.target.dataset.id;
+    this.setData({
+      type: value,
+      act: e.target.dataset.index,
+      left: e.target.dataset.index > 3 ? 250 : 0,
+      list: [],
+      top: 0,
+      page: 1,
+      loading: true
+    })
+
+  },
+
+
+  /**organizer/article/conference/journal/subject
    * 生命周期函数--监听页面初次渲染完成
    */
   onReady: function () {
@@ -48,7 +141,6 @@ Page({
    * 生命周期函数--监听页面显示
    */
   onShow: function () {
-
   },
 
   /**

+ 57 - 17
pages/search/search.wxml

@@ -1,20 +1,60 @@
-<view class="search">
-    <input bindinput="inputChange"  placeholder-style='color:#C8C8C8;' placeholder="输入名称/关键字搜索"></input>
-    <image bindtap="search"  mode="widthFix" src="../images/search.png"></image>
+<view class="search" >
+    <input bindinput="inputChange" placeholder-style='color:#C8C8C8;' value="{{keyword}}" placeholder="输入名称/关键字搜索"></input>
+    <image bindtap="search" mode="widthFix" src="../images/search.png"></image>
+    
 </view>
-<view class="part">
-    <view class="title">搜索指定内容</view>
-    <navigator url="../searchList/searchList?type={{item.value}}&act={{index+1}}" wx:for='{{info.navs}}'>{{item.name}}</navigator>
+<view style="height:30rpx;background:#fff;"></view>
+<view class="rview">
+
+
+<scroll-view class="scroll" scroll-y="true" scroll-top='{{top}}' bindscrolltolower='next'>
+
+<view  class="part">
+    <view class="title">{{title}}</view>
+    <navigator  url="../journalDetail/journalDetail?id={{i.id}}" class="list" wx:for='{{list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{value==type && type=="journal"}}'>
+              <image  src="{{i.img}}"></image>
+              <view>
+                  <view class="title"> <rich-text nodes="{{i.name}}"></rich-text></view>
+                  <!-- <text>微信号:{{i.wxcode}}</text>
+                  <text>主编:{{i.editor}}</text>
+                  <text class="">主办单位:{{i.publishingUnit}}</text> -->
+                  <text class="wrap">{{i.desc}}</text>
+              </view>
+    </navigator>
+    <navigator url="../list/list?organizer_id={{i.id}}&title={{i.name}}" class="list" wx:for='{{list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{value==type && type=="organizer"}}' >
+              <image style="height:125rpx;"  src="{{i.img}}"></image>
+              <view>
+                  <view class="title"> <rich-text nodes="{{i.name}}"></rich-text></view>
+                  <text class="wrap">{{i.desc}}</text>
+              </view>
+    </navigator>
+    <navigator url="../actDetail/actDetail?id={{i.id}}" class="list" wx:for='{{list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{value==type && type=="article"}}' >
+              <image  mode="widthFix" src="{{i.img}}"></image>
+              <view>
+                  <view class="title">{{i.name}}</view>
+                  <text class="wrap">{{i.desc}}</text>
+              </view>
+    </navigator>
+    <navigator url="../conference/conference?id={{i.id}}" class="list" wx:for='{{list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{value==type && type=="conference"}}' >
+              <image src="{{i.img}}"></image>
+              <view>
+                  <view class="title"> <rich-text nodes="{{i.name}}"></rich-text></view>
+                  <text class="wrap">{{i.desc}}</text>
+              </view>
+    </navigator>
+    <navigator url="../list/list?subject_id={{i.id}}&title={{i.name}}" class="list" wx:for='{{list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{value==type && type=="subject"}}' style='padding-left:0;'>
+              <!-- <image  mode="widthFix" src="{{i.img}}"></image> -->
+              <view>
+                  <view class="title"> <rich-text nodes="{{i.name}}"></rich-text></view>
+                  <text class="wrap">{{i.desc}}</text>
+              </view>
+    </navigator>
+
+    <block wx:if='{{list.length >= 20}}'>
+        <view class='more' wx:if='{{loading}}'>上拉加载更多...</view>
+        <view class='more' wx:else>已加载全部数据!</view>
+    </block>
 </view>
-<view class="part">
-    <view class="title">搜索记录</view>
-    <navigator url="../searchList/searchList?keyword={{item}}" wx:for='{{info.history}}'>{{item}}</navigator>
+</scroll-view>
 </view>
-<view class="part">
-    <view class="title">冷词</view>
-    <navigator url="../searchList/searchList?keyword={{item}}" wx:for='{{info.cold_keyword}}'>{{item}}</navigator>
-</view>
-<view class="part">
-    <view class="title">热词</view>
-    <navigator url="../searchList/searchList?keyword={{item}}" wx:for='{{info.hot_keyword}}'>{{item}}</navigator>
-</view>
+

+ 132 - 9
pages/search/search.wxss

@@ -1,35 +1,158 @@
-/* pages/search/search.wxss */
+/* pages/searchList/searchList.wxss */
 page{
+  /* background: #fff; */
+  padding: 0;
+}
+.scroll{
+  height: calc(100vh - 100rpx)
+}
+.search{
+  padding: 0 30rpx 0rpx;
   background: #fff;
 }
 .search input{
-  background: #F1F1F1;
-  height: 80rpx;
-  border-radius: 10rpx;
+  background: #EEEEEE;
+}
+.tab{
+  /* overflow: auto; */
+  background: #fff;
+  padding: 10px;
+  margin-bottom: 20rpx;
+}
+.tab view{
+  display: flex;
+  justify-content: space-between;
+  
+  width: 150vw
+}
+.tab text{
+  font-size: 30rpx;
+  color: #666;
+}
+.tab .active{
+  color: #3780CD;
+}
+.rview .part{
+  background: #fff;
+  padding: 0 10px;
+  margin-top: 10px;
+}
+.rview .part>.title{
+  font-size: 32rpx;
+  color: #333;
+  margin-bottom: 28rpx;
+  line-height: 40px;
+}
+.search image {
+  right: 45rpx;
+}
+.rview .part>.title text{
+  float: right;
+  color: #3780CD;
+  font-size: 26rpx;
+}
+.tj{
+  display: flex;
+  justify-content: space-between;
 }
-.part{
+.tj navigator{
+  width: 30%;
+}
+.tj image{
+  width: 100%;
+  max-height: 200rpx;
+}
+.list{
+  /* box-shadow: 0px 2rpx 9rpx 0px rgba(0, 0, 0, 0.2); */
+  border-radius: 20rpx;
+  display: flex;
+  padding: 20rpx;
+  /* box-shadow: 0 0 15rpx 0px rgba(0, 0, 0, 0.2); */
+  margin: 0 20rpx 40rpx;
+  
+}
+.bottom{
+  margin-bottom: 30rpx;
+}
+.list image{
+  width: 20%;
+  /* height: 160rpx; */
+  max-height: 100px;
+  background: #eee;
+}
+.list>view{
+  width: 80%;
+  padding-left: 20rpx;
+  vertical-align: middle;
+}
+.list .title{
+  margin-bottom: 20rpx;
+  text-overflow: ellipsis;
+  overflow: hidden;
+  white-space: nowrap;
+}
+.list text{
+  color: #999;
+  display: block;
+  text-overflow: ellipsis;
+  overflow: hidden;
+  white-space: nowrap;
+  font-size: 26rpx;
+}
+.list .company{
+  overflow: visible;
+  white-space: pre-wrap;
+  margin-top: 40rpx;
+  font-size: 28rpx;
+}
+.list .wrap{
+  display: block;
+  font-size: 26rpx;
+  color: #999;
+   overflow: hidden;
+    text-overflow: ellipsis;
+    display: -webkit-box;
+    -webkit-line-clamp: 2;
+    -webkit-box-orient: vertical;
+    white-space: normal;
+}
+
+.sview{
+  background: #fff;
+  padding: 20rpx 30rpx 0
+}
+.sview .part{
   border-top: 1px solid #F1F1F1;
   padding: 40rpx 0;
   display: flex;
   justify-content: space-between;
   flex-wrap: wrap;
 }
-.title{
+.sview .part:first-child{
+  border: none;
+}
+.sview .title{
   color: #999;
   width: 100%;
   margin-bottom: 40rpx;
 }
-.part navigator{
+.sview .part navigator{
   width: 49%;
   text-align: center;
   margin-bottom: 40rpx;
 }
-.part navigator:nth-child(odd){
+.sview .part navigator:nth-child(odd){
   border-left: 1px solid #D8D8D8;
 }
-.part text{
+.sview .part text{
   width: 50%;
   color: #3780CD;
   margin-bottom: 40rpx;
   text-align: center;
+}
+
+.more{
+  text-align:center;
+  color:#999;
+  padding:10rpx 0;
 }

+ 102 - 20
pages/searchList/searchList.js

@@ -10,7 +10,14 @@ Page({
     act:0,
     data:[],
     keyword:'',
-    type:''
+    type:'',
+    left:0,
+    top:0,
+    title:'',
+    value:'',
+    list:[],
+    page:1,
+    loading:true
   },
 
   /**
@@ -18,32 +25,68 @@ Page({
    */
   onLoad: function (options) {
     // options.keyword='科学'
-    this.setData({
-      keyword: options.keyword ? options.keyword:'',
-      type: options.type ? options.type:'',
-      act: options.act
+    wx.request({
+      url: host + '/api/search/default',
+      method: 'GET',
+      success: res=>{
+        this.setData({
+          info: res.data.data
+        })
+      }
     })
-    if (options.keyword||true ){
-      this.getData()
-    }
+    // this.setData({
+    //   keyword: options.keyword ? options.keyword:'',
+    //   type: options.type ? options.type:'',
+    //   act: options.act
+    // })
+    // if (options.keyword||true ){
+    //   this.getData()
+    // }
     
   },
   getData:function(){
-    wx.showLoading({
-      title: '加载中',
-    })
+    wx.showNavigationBarLoading()
     wx.request({
       url: host + '/api/search',
       method: 'GET',
       data: {
         keyword: this.data.keyword,
-        type: this.data.type
+        type: this.data.type,
+        page_size:20,
+        page:this.data.page
       },
       success: res => {
-        wx.hideLoading()
-        this.setData({
-          data: res.data.data
-        })
+        wx.hideNavigationBarLoading()
+        
+        if(this.data.act>0){
+          let list = this.data.list, data = res.data.data[0].list;
+          if (data.length<=0){
+              this.setData({
+                loading:false
+              })
+              return;
+          }
+          for (let i = 0; i <data.length;i++) {
+            data[i].name = data[i].name.replace(this.data.keyword, '<span style="color:#3780CD;">' + this.data.keyword+'</span>')
+            list.push(data[i])
+          }
+          this.setData({
+            title: res.data.data[0].name,
+            value: res.data.data[0].value,
+            list:list
+          })
+        }else{
+          let data = res.data.data
+          for(let i=0;i<data.length;i++){
+            for (let j = 0; j < data[i].list.length; j++) {
+              data[i].list[j].name = data[i].list[j].name.replace(this.data.keyword, '<span style="color:#3780CD;">' + this.data.keyword + '</span>')
+            }
+          }
+          this.setData({
+            data: data
+          })
+        }
+        
       },
       fail: function () {
         wx.hideLoading();
@@ -54,9 +97,37 @@ Page({
       }
     })
   },
+  next:function(){
+    if(this.data.act>0 && this.data.loading){
+      this.setData({
+        page:this.data.page+1
+      })
+      this.getData()
+    }
+  },
+  search:function(e){
+    this.setData({
+      keyword: e.target.dataset.value,
+      act:0
+    })
+    this.getData();
+  },
   inputChange:function(e){
     this.setData({
-      keyword:e.detail.value
+      keyword:e.detail.value,
+      page: 1,
+      list: [],
+      data: [],
+      top: 0
+    })
+    this.getData();
+  },
+  search1: function () {
+    this.setData({
+      page:1,
+      list:[],
+      data:[],
+      top:0
     })
     this.getData();
   },
@@ -65,7 +136,11 @@ Page({
     var array = ['', 'organizer', 'article', 'conference', 'journal','subject'];
     this.setData({
       type: array[i],
-      act:i
+      act:i,
+      top:0,
+      list:[],
+      page:1,
+      loading:true
     })
     this.getData()
   },
@@ -73,9 +148,17 @@ Page({
     var value = e.target.dataset.id;
     this.setData({
       type: value,
-      act: e.target.dataset.index
+      act: e.target.dataset.index,
+      left: e.target.dataset.index>3?250:0,
+      list: [],
+      top:0,
+      page: 1,
+      loading: true
     })
+    
   },
+
+
   /**organizer/article/conference/journal/subject
    * 生命周期函数--监听页面初次渲染完成
    */
@@ -87,7 +170,6 @@ Page({
    * 生命周期函数--监听页面显示
    */
   onShow: function () {
-
   },
 
   /**

+ 1 - 1
pages/searchList/searchList.json

@@ -1,3 +1,3 @@
 {
-  "usingComponents": {}
+  "navigationBarTitleText": "搜索"
 }

+ 56 - 27
pages/searchList/searchList.wxml

@@ -1,8 +1,11 @@
-<view class="search">
+<view class="search" >
     <input bindinput="inputChange" placeholder-style='color:#C8C8C8;' value="{{keyword}}" placeholder="输入名称/关键字搜索"></input>
-    <image  mode="widthFix" src="../images/search.png"></image>
+    <image bindtap="search1" mode="widthFix" src="../images/search.png"></image>
+    
 </view>
-<view  class="tab">
+
+<view class="rview" wx:if='{{keyword}}'>
+<scroll-view  scroll-x="true" class="tab" scroll-left='{{left}}'>
   <view>
       <text bindtap="tab" data-id='0' class="{{act == 0?'active':''}}">全部</text>
       <text bindtap="tab" data-id='1' class="{{act == 1?'active':''}}">相关主办单位</text>
@@ -11,87 +14,113 @@
       <text bindtap="tab" data-id='4' class="{{act == 4?'active':''}}">相关期刊</text>
       <text bindtap="tab" data-id='5' class="{{act == 5?'active':''}}">相关学术学科</text>
   </view>
-</view>
+</scroll-view>
 
-<scroll-view class="scroll" scroll-y="true">
+<scroll-view class="scroll" scroll-y="true" scroll-top='{{top}}' bindscrolltolower='next'>
 <view wx:if='{{act==0}}' class="part" wx:for='{{data}}'>
     <view class="title" wx:if='{{item.list.length>0}}'>{{item.name}}   <text bindtap="more" data-index='{{index+1}}' data-id='{{item.value}}'>查看更多</text></view>
     <navigator  url="../journalDetail/journalDetail?id={{i.id}}" class="list" wx:for='{{item.list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{item.value=="journal"&& idx<3}}'>
               <image  src="{{i.img}}"></image>
               <view>
-                  <view class="title">{{i.name}}</view>
+                  <view class="title"> <rich-text nodes="{{i.name}}"></rich-text></view>
                   <text>微信号:{{i.wxcode}}</text>
                   <text>主编:{{i.editor}}</text>
                   <text class="">主办单位:{{i.publishingUnit}}</text>
               </view>
     </navigator>
     <navigator url="../list/list?organizer_id={{i.id}}&title={{i.name}}" class="list" wx:for='{{item.list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{item.value=="organizer" && idx<3}}' >
-              <image  src="{{i.img}}"></image>
+              <image style="height:125rpx;" src="{{i.img}}"></image>
               <view>
-                  <view class="title">{{i.name}}</view>
+                  <view class="title"> <rich-text nodes="{{i.name}}"></rich-text></view>
                   <text class="wrap">{{i.desc}}</text>
               </view>
     </navigator>
     <navigator url="../actDetail/actDetail?id={{i.id}}" class="list" wx:for='{{item.list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{item.value=="article" && idx<3}}' >
-              <image  mode="widthFix" src="{{i.img}}"></image>
+              <image  src="{{i.img}}"></image>
               <view>
-                  <view class="title">{{i.name}}</view>
+                  <view class="title"> <rich-text nodes="{{i.name}}"></rich-text></view>
                   <text class="wrap">{{i.desc}}</text>
               </view>
     </navigator>
     <navigator url="../eventDetail/eventDetail?id={{i.id}}" class="list" wx:for='{{item.list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{item.value=="conference" && idx<3}}' >
               <image src="{{i.img}}"></image>
               <view>
-                  <view class="title">{{i.name}}</view>
+                  <view class="title"> <rich-text nodes="{{i.name}}"></rich-text></view>
                   <text class="wrap">{{i.desc}}</text>
               </view>
     </navigator>
     <navigator url="../list/list?subject_id={{i.id}}&title={{i.name}}" class="list" wx:for='{{item.list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{item.value=="subject" && idx<3}}' style='padding-left:0;'>
               <!-- <image  mode="widthFix" src="{{i.img}}"></image> -->
               <view>
-                  <view class="title">{{i.name}}</view>
+                  <view class="title"> <rich-text nodes="{{i.name}}"></rich-text></view>
                   <text class="wrap">{{i.desc}}</text>
               </view>
     </navigator>
 </view>
-<view wx:if='{{act!=0}}' class="part" wx:for='{{data}}'>
-
-    <navigator  url="../journalDetail/journalDetail?id={{i.id}}" class="list" wx:for='{{item.list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{item.value==type && type=="journal"}}'>
+<view wx:if='{{act!=0}}' class="part">
+    <view class="title">{{title}}</view>
+    <navigator  url="../journalDetail/journalDetail?id={{i.id}}" class="list" wx:for='{{list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{value==type && type=="journal"}}'>
               <image  src="{{i.img}}"></image>
               <view>
-                  <view class="title">{{i.name}}</view>
-                  <text>微信号:{{i.wxcode}}</text>
+                  <view class="title"> <rich-text nodes="{{i.name}}"></rich-text></view>
+                  <!-- <text>微信号:{{i.wxcode}}</text>
                   <text>主编:{{i.editor}}</text>
-                  <text class="">主办单位:{{i.publishingUnit}}</text>
+                  <text class="">主办单位:{{i.publishingUnit}}</text> -->
+                  <text class="wrap">{{i.desc}}</text>
               </view>
     </navigator>
-    <navigator url="../list/list?organizer_id={{i.id}}&title={{i.name}}" class="list" wx:for='{{item.list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{item.value==type && type=="organizer"}}' >
-              <image  src="{{i.img}}"></image>
+    <navigator url="../list/list?organizer_id={{i.id}}&title={{i.name}}" class="list" wx:for='{{list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{value==type && type=="organizer"}}' >
+              <image style="height:125rpx;"  src="{{i.img}}"></image>
               <view>
-                  <view class="title">{{i.name}}</view>
+                  <view class="title"> <rich-text nodes="{{i.name}}"></rich-text></view>
                   <text class="wrap">{{i.desc}}</text>
               </view>
     </navigator>
-    <navigator url="../actDetail/actDetail?id={{i.id}}" class="list" wx:for='{{item.list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{item.value==type && type=="article"}}' >
+    <navigator url="../actDetail/actDetail?id={{i.id}}" class="list" wx:for='{{list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{value==type && type=="article"}}' >
               <image  mode="widthFix" src="{{i.img}}"></image>
               <view>
                   <view class="title">{{i.name}}</view>
                   <text class="wrap">{{i.desc}}</text>
               </view>
     </navigator>
-    <navigator url="../conference/conference?id={{i.id}}" class="list" wx:for='{{item.list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{item.value==type && type=="conference"}}' >
+    <navigator url="../conference/conference?id={{i.id}}" class="list" wx:for='{{list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{value==type && type=="conference"}}' >
               <image src="{{i.img}}"></image>
               <view>
-                  <view class="title">{{i.name}}</view>
+                  <view class="title"> <rich-text nodes="{{i.name}}"></rich-text></view>
                   <text class="wrap">{{i.desc}}</text>
               </view>
     </navigator>
-    <navigator url="../list/list?subject_id={{i.id}}&title={{i.name}}" class="list" wx:for='{{item.list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{item.value==type && type=="subject"}}' style='padding-left:0;'>
+    <navigator url="../list/list?subject_id={{i.id}}&title={{i.name}}" class="list" wx:for='{{list}}' wx:for-item='i'  wx:for-index='idx' wx:if='{{value==type && type=="subject"}}' style='padding-left:0;'>
               <!-- <image  mode="widthFix" src="{{i.img}}"></image> -->
               <view>
-                  <view class="title">{{i.name}}</view>
+                  <view class="title"> <rich-text nodes="{{i.name}}"></rich-text></view>
                   <text class="wrap">{{i.desc}}</text>
               </view>
     </navigator>
+
+    <block wx:if='{{list.length >= 20}}'>
+        <view class='more' wx:if='{{loading}}'>上拉加载更多...</view>
+        <view class='more' wx:else>已加载全部数据!</view>
+    </block>
+</view>
+</scroll-view>
+</view>
+
+<view class="sview" wx:else>
+  <view class="part">
+    <view class="title">搜索指定内容</view>
+    <navigator url="../search/search?type={{item.value}}&title={{item.name}}"  wx:for='{{info.navs}}'>{{item.name}}</navigator>
+</view>
+<view class="part">
+    <view class="title">搜索记录</view>
+    <navigator data-value='{{item}}' bindtap="search" wx:for='{{info.history}}'>{{item}}</navigator>
+</view>
+<view class="part">
+    <view class="title">冷词</view>
+    <navigator data-value='{{item}}' bindtap="search" wx:for='{{info.cold_keyword}}'>{{item}}</navigator>
+</view>
+<view class="part">
+    <view class="title">热词</view>
+    <navigator data-value='{{item}}' bindtap="search" wx:for='{{info.hot_keyword}}'>{{item}}</navigator>
 </view>
-</scroll-view>
+</view>

+ 54 - 6
pages/searchList/searchList.wxss

@@ -1,19 +1,20 @@
 /* pages/searchList/searchList.wxss */
 page{
+  /* background: #fff; */
   padding: 0;
 }
 .scroll{
   height: calc(100vh - 166rpx)
 }
 .search{
-  padding: 0 10px;
+  padding: 0 30rpx;
   background: #fff;
 }
 .search input{
   background: #EEEEEE;
 }
 .tab{
-  overflow: auto;
+  /* overflow: auto; */
   background: #fff;
   padding: 10px;
   margin-bottom: 20rpx;
@@ -31,18 +32,21 @@ page{
 .tab .active{
   color: #3780CD;
 }
-.part{
+.rview .part{
   background: #fff;
   padding: 0 10px;
   margin-top: 10px;
 }
-.part>.title{
+.rview .part>.title{
   font-size: 32rpx;
   color: #333;
   margin-bottom: 28rpx;
   line-height: 40px;
 }
-.part>.title text{
+.search image {
+  right: 45rpx;
+}
+.rview .part>.title text{
   float: right;
   color: #3780CD;
   font-size: 26rpx;
@@ -67,10 +71,14 @@ page{
   margin: 0 20rpx 40rpx;
   
 }
+.bottom{
+  margin-bottom: 30rpx;
+}
 .list image{
   width: 20%;
-  height: 160rpx;
+  /* height: 160rpx; */
   max-height: 100px;
+  background: #eee;
 }
 .list>view{
   width: 80%;
@@ -107,4 +115,44 @@ page{
     -webkit-line-clamp: 2;
     -webkit-box-orient: vertical;
     white-space: normal;
+}
+
+.sview{
+  background: #fff;
+  padding: 20rpx 30rpx 0
+}
+.sview .part{
+  border-top: 1px solid #F1F1F1;
+  padding: 40rpx 0;
+  display: flex;
+  justify-content: space-between;
+  flex-wrap: wrap;
+}
+.sview .part:first-child{
+  border: none;
+}
+.sview .title{
+  color: #999;
+  width: 100%;
+  margin-bottom: 40rpx;
+}
+.sview .part navigator{
+  width: 49%;
+  text-align: center;
+  margin-bottom: 40rpx;
+}
+.sview .part navigator:nth-child(odd){
+  border-left: 1px solid #D8D8D8;
+}
+.sview .part text{
+  width: 50%;
+  color: #3780CD;
+  margin-bottom: 40rpx;
+  text-align: center;
+}
+
+.more{
+  text-align:center;
+  color:#999;
+  padding:10rpx 0;
 }