业务交流通
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

index.js 2.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. // pages/index/components/listDetails/Details.js
  2. const app = getApp()
  3. const $request = require('../../utils/request.js');
  4. Page({
  5. /**
  6. * 页面的初始数据
  7. */
  8. data: {
  9. currentIndex: 1,
  10. pageLoading: false,
  11. tags: [],
  12. min: 0,
  13. max: 300,
  14. // 用户有无点击过tag
  15. isClickTag:false,
  16. // 选中tag
  17. selectedTag:[],
  18. detailValue:"",
  19. },
  20. /**
  21. * 生命周期函数--监听页面加载
  22. */
  23. onLoad() {
  24. this.getTags();
  25. },
  26. // 输入框输入
  27. textareaInput(e) {
  28. let value = e.detail.value;
  29. let len = e.detail.cursor;;
  30. this.setData({
  31. min: len
  32. });
  33. this.setData({
  34. detailValue:value
  35. })
  36. },
  37. // tag选择切换
  38. tagSelectedChange(e){
  39. let typename = e.currentTarget.dataset.typename;
  40. let selectedTag = this.data.selectedTag;
  41. let tempArr = [];
  42. // 1 如果选中的数组里没有当前type
  43. if(selectedTag.indexOf(typename) == -1){
  44. // 2 如果选中的数组的长度小于3 直接push
  45. if(selectedTag.length < 3){
  46. selectedTag.push(typename)
  47. }
  48. }
  49. // 3 如果选中的数组里有它,直接删除
  50. else{
  51. selectedTag.forEach((el,inx)=>{
  52. if(el == typename){
  53. selectedTag.splice(inx,1);
  54. }
  55. })
  56. }
  57. let tags = this.data.tags;
  58. tags.forEach(el=>{
  59. el.isActive = false
  60. if(selectedTag.indexOf(el.typeName) != -1){
  61. el.isActive = true;
  62. }
  63. })
  64. this.setData({
  65. selectedTag,
  66. tags
  67. })
  68. console.log(this.data.selectedTag,'selectedTag');
  69. console.log(this.data.tags,'tags');
  70. },
  71. // 获取tag
  72. getTags() {
  73. this.setData({
  74. pageLoading: true,
  75. })
  76. $request.get('/businessCommunicationType/getAllType.action').then(res => {
  77. this.setData({
  78. pageLoading: false,
  79. })
  80. if (res.status == 0) {
  81. let datas = res.data;
  82. datas.forEach(el=>{
  83. el.isActive = false;
  84. })
  85. this.setData({
  86. tags: datas,
  87. })
  88. }
  89. console.log(this.data.tags,'tags')
  90. }).catch(error => {
  91. console.log(error, 'error appletLogin')
  92. })
  93. },
  94. /**
  95. * 用户点击右上角分享
  96. */
  97. onShareAppMessage: function () {
  98. }
  99. })