pulishPost.js 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. // pages/pulishPost/pulishPost.js
  2. const net = require("../../utils/net.js");
  3. const { api_tips_add } = require("../../utils/api.js");
  4. const util = require("../../utils/util.js");
  5. Page({
  6. /**
  7. * 页面的初始数据
  8. */
  9. data: {
  10. tagNameList: [],
  11. tagIdList: [],
  12. inputValue: "",
  13. imgs: [],
  14. tagData: {},
  15. },
  16. onLoad: function (options) {
  17. if (options && options.data) {
  18. const data = JSON.parse(options.data);
  19. const { tagNameList, tagIdList } = this.data;
  20. if (data.tagName) {
  21. tagNameList.push(data.tagName);
  22. this.setData({
  23. tagNameList: tagNameList,
  24. });
  25. tagIdList.push(data.id);
  26. }
  27. }
  28. },
  29. inputChange(event) {
  30. const { value } = event.detail;
  31. this.data.inputValue = value;
  32. },
  33. tapAddTagAction() {
  34. const { tagIdList, tagNameList } = this.data;
  35. const _this = this;
  36. wx.navigateTo({
  37. url: `/pages/selectTags/selectTags`,
  38. events: {
  39. acceptDataFromTagsPage(data) {
  40. tagIdList.push(data.id);
  41. tagNameList.push(data.tagName);
  42. _this.setData({
  43. tagNameList: tagNameList,
  44. });
  45. },
  46. },
  47. });
  48. },
  49. tapRemoveTagAction(e) {
  50. const { currentIndex } = e.currentTarget.dataset;
  51. const { tagNameList, tagIdList } = this.data;
  52. tagNameList.splice(currentIndex, 1);
  53. tagIdList.splice(currentIndex, 1);
  54. this.setData({
  55. tagNameList: tagNameList,
  56. });
  57. },
  58. selectImgsChange(e) {
  59. this.data.imgs = e.detail.imgs;
  60. },
  61. tapPulishAction() {
  62. const { tagIdList, inputValue, imgs } = this.data;
  63. const imgsUrl = [];
  64. if (imgs.length || inputValue.length) {
  65. for (let i = 0, n = imgs.length; i < n; i++) {
  66. const imgObj = imgs[i];
  67. if (imgObj.type != 3) {
  68. util.showToast({
  69. title:
  70. imgObj.type == 1
  71. ? "图片上传中,请您稍后再试!"
  72. : "您选择的图片存在违规.请您重新选择图片",
  73. });
  74. return;
  75. }
  76. imgsUrl.push(imgObj.src);
  77. }
  78. let params = {};
  79. params.url = api_tips_add;
  80. params.data = {};
  81. if (imgs.length) params.data.imgsUrl = JSON.stringify(imgsUrl);
  82. if (inputValue.length) params.data.content = inputValue;
  83. if (tagIdList.length) params.data.tagIdList = JSON.stringify(tagIdList);
  84. util.showLoading({
  85. title: "发布中...",
  86. });
  87. net.req(params, true).then(
  88. (data) => {
  89. util.showToast({ title: "发布成功" });
  90. const pages = getCurrentPages(); /*在内存中的所有页面栈对象*/
  91. const reloadPage = pages[pages.length - 2]; /*我的页面对象*/
  92. reloadPage &&
  93. reloadPage.refreshCallback &&
  94. reloadPage.refreshCallback();
  95. wx.navigateBack();
  96. util.hideLoading();
  97. },
  98. (e) => {
  99. util.showToast({ title: e.msg || "" });
  100. util.hideLoading();
  101. }
  102. );
  103. } else {
  104. util.showToast({ title: "请输入您要发布的内容..." });
  105. }
  106. },
  107. });