Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.

152 righe
4.5 KiB

  1. const app = getApp()
  2. const config = require("../../config/config")
  3. const Http = require("../../utils/HttpBasics.js")
  4. const navigationBarHeight = (getApp().statusBarHeight + 44)+"px"
  5. Page({
  6. data:{
  7. imgHttps:app.globalData.imgHttps,
  8. navigationBarHeight,
  9. activityFlag:0,
  10. pageNum:1,
  11. inputValue:"",
  12. list:[],
  13. noDAtaFlag:false,
  14. },
  15. setSearchValue(e){
  16. let value = e.detail.value
  17. this.setData({
  18. inputValue:value
  19. })
  20. },
  21. setActiviy(e){
  22. let index = e.currentTarget.dataset.index
  23. this.setData({
  24. activityFlag:index,
  25. pageNum:1,
  26. noDAtaFlag:false,
  27. list:[]
  28. })
  29. this.search()
  30. },
  31. goXq(e){//跳转详情
  32. let id = e.currentTarget.dataset.id
  33. let title = e.currentTarget.dataset.title
  34. tt.navigateTo({
  35. url: `/pages/classDetails/classDetails?id=${id}&title=${title}` // 指定页面的url
  36. });
  37. },
  38. searchBtn(){
  39. this.setData({
  40. pageNum:1,
  41. list:[],
  42. })
  43. this.search()
  44. },
  45. search(){//查询
  46. tt.showLoading({
  47. title: '加载中...', // 内容
  48. });
  49. let url = ""
  50. let data=""
  51. if(this.data.activityFlag==0){//课程
  52. url = config.api.columnLsit
  53. data = {
  54. title:this.data.inputValue,
  55. pageNum:this.data.pageNum,
  56. pageSize:8
  57. }
  58. }else{//作者
  59. url = config.api.getAuthor
  60. data = {
  61. name:this.data.inputValue,
  62. pageNum:this.data.pageNum,
  63. pageSize:8
  64. }
  65. }
  66. Http.get({
  67. url:url,
  68. data:data
  69. }).then(res=>{
  70. let arr = []
  71. if(res.data.list!=0&&res.data.list[0].businessTypes){
  72. arr = res.data.list
  73. let sting = ""
  74. arr.map(item=>{
  75. if(item.businessTypes){
  76. if(JSON.parse(item.businessTypes).length>0){
  77. item.authoRemark = JSON.parse(item.businessTypes)[0].title
  78. }else{
  79. item.authoRemark = ""
  80. }
  81. }
  82. })
  83. let tempArr = this.data.list
  84. if(this.data.pageNum>1){
  85. // let contArr= tempArr.push(...arr)
  86. this.setData({
  87. list:[...tempArr,...res.data.list],
  88. })
  89. if(this.data.list.length==0){
  90. this.setData({
  91. noDAtaFlag:true
  92. })
  93. }else{
  94. this.setData({
  95. noDAtaFlag:false
  96. })
  97. }
  98. }else{
  99. this.setData({
  100. list:arr,
  101. noDAtaFlag:arr.length==0?true:false
  102. })
  103. }
  104. tt.hideLoading();
  105. }else{
  106. if(this.data.pageNum>1){
  107. let tempArr = this.data.list
  108. // let contArr= tempArr.push(...res.data.list)
  109. // console.log(contArr,"contArr");
  110. this.setData({
  111. list:[...tempArr,...res.data.list],
  112. })
  113. if(this.data.list.length==0){
  114. this.setData({
  115. noDAtaFlag:true
  116. })
  117. }else{
  118. this.setData({
  119. noDAtaFlag:false
  120. })
  121. }
  122. }else{
  123. this.setData({
  124. list:res.data.list,
  125. noDAtaFlag:res.data.list==0?true:false
  126. })
  127. }
  128. tt.hideLoading();
  129. }
  130. }).catch(err=>{
  131. tt.hideLoading();
  132. tt.showToast({
  133. title: err.message?err.message:err.data, // 内容
  134. icon:"none"
  135. });
  136. })
  137. // console.log(this.data.list);
  138. },
  139. onLoad(){
  140. this.search()
  141. },
  142. onReachBottom:function(){
  143. console.log("到底了");
  144. this.setData({
  145. pageNum:this.data.pageNum+1
  146. })
  147. this.search()
  148. }
  149. })