search.js 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. import common from '../../utils/util';
  2. import server from '../../utils/main';
  3. const app = getApp();
  4. Page({
  5. data: {},
  6. onLoad: function (options) {
  7. this.setData({
  8. Height: common.getSystemHeight(),
  9. ExampleArray: this.getExampleArray(),
  10. IsSearchResult: false,
  11. });
  12. },
  13. getExampleArray: function () {
  14. var result = [];
  15. var arr = JSON.parse(wx.getStorageSync("HanziAll"));
  16. for (var i = 0; i < arr.length; i++) {
  17. if (arr[i].Units && arr[i].Units.length>0) {
  18. var rnd1 = common.random(0, arr[i].Units.length - 1);
  19. var rnd2 = common.random(0, arr[i].Units[rnd1].Words.length - 1);
  20. var isfinished = false;
  21. var arrReview = wx.getStorageSync("ReviewList");
  22. for (var l = 0; l < arrReview.length; l++) {
  23. if (arrReview[l].Word == arr[i].Units[rnd1].Words[rnd2].Name) {
  24. isfinished = true;
  25. break;
  26. }
  27. }
  28. arr[i].Units[rnd1].Words[rnd2].BookID = arr[i].ID;
  29. arr[i].Units[rnd1].Words[rnd2].UnitID = arr[i].Units[rnd1].ID;
  30. arr[i].Units[rnd1].Words[rnd2].WordID = rnd2;
  31. arr[i].Units[rnd1].Words[rnd2].IsFinished = isfinished;
  32. result.push(arr[i].Units[rnd1].Words[rnd2]);
  33. }
  34. }
  35. return result;
  36. },
  37. researchWord: function (e) {
  38. var that = this;
  39. that.setData({
  40. IsSearchResult: false,
  41. });
  42. var result = false;
  43. var word = e.detail.value;
  44. if (common.IsChinese(word)) {
  45. server.getData('SearchHanzi?Word=' + word, function (data) {
  46. if (data) {
  47. wx.setStorageSync("CurrentSearchWord", data);
  48. wx.setStorageSync('SelectedRandom', false);
  49. wx.setStorageSync('IsAutoPage', false);
  50. wx.navigateTo({
  51. url: "../main/detail?Type=search",
  52. });
  53. } else {
  54. that.setData({
  55. IsSearchResult: true,
  56. });
  57. }
  58. });
  59. } else {
  60. that.setData({
  61. IsSearchResult: true,
  62. });
  63. }
  64. },
  65. goto: function (e) {
  66. var word = e.currentTarget.dataset.word;
  67. this.researchWord({
  68. detail: {
  69. value: word
  70. }
  71. });
  72. },
  73. onShareAppMessage: function () {
  74. return {
  75. title: app.globalData.ShareTitle,
  76. path: 'pages/index/index?UserID=' + app.globalData.userInfo.UserID,
  77. imageUrl: app.globalData.ShareImage,
  78. }
  79. },
  80. })