list.js 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. import common from '../../utils/util';
  2. import server from '../../utils/main';
  3. const app = getApp();
  4. Page({
  5. data: {
  6. },
  7. onLoad: function (options) {
  8. var bookID=options.id;
  9. this.setData({
  10. Height: common.getSystemHeight(),
  11. NavClass1: "nav1",
  12. NavClass2: "nav2",
  13. IsShowNav1:true,
  14. BookID:bookID,
  15. });
  16. },
  17. onShow:function(){
  18. this.init();
  19. },
  20. init:function(){
  21. var arr=JSON.parse(wx.getStorageSync("HanziAll"));
  22. var arrReview = wx.getStorageSync("ReviewList");
  23. var arrFinished = wx.getStorageSync("FinishedList");
  24. var result;
  25. for (var i = 0; i < arr.length; i++) {
  26. if (arr[i].ID == this.data.BookID) {
  27. result=arr[i];
  28. for(var j=0;j<result.Units.length;j++){
  29. var item = result.Units[j];
  30. var rnd=common.random(2,5);
  31. item.Example ="";
  32. for(var k=0;k<rnd;k++)
  33. item.Example += item.Words[k].Name;
  34. item.IsFinished = false;
  35. for (var k = 0; k < arrFinished.length; k++) {
  36. if (item.ID == arrFinished[k].UnitID) {
  37. item.IsFinished = true;
  38. break;
  39. }
  40. }
  41. for (var k = 0; k < item.Words.length; k++) {
  42. item.Words[k].ReviewCss = "";
  43. for (var l = 0; l < arrReview.length; l++) {
  44. if (arrReview[l].WordID == item.Words[k].ID) {
  45. item.Words[k].ReviewCss = "boxSelect";
  46. break;
  47. }
  48. }
  49. }
  50. }
  51. break;
  52. }
  53. }
  54. this.setData({
  55. List:result.Units,
  56. topImage: "../../images/0400" + this.data.BookID+".png"
  57. });
  58. wx.setNavigationBarTitle({
  59. title: result.Name,
  60. });
  61. },
  62. selectNav: function (e) {
  63. var id = e.currentTarget.dataset.id;
  64. //console.log(id);
  65. if (id == "1") {
  66. this.setData({
  67. NavClass1: "nav1",
  68. NavClass2: "nav2",
  69. IsShowNav1:true,
  70. })
  71. }
  72. else if (id == "2") {
  73. this.setData({
  74. NavClass1: "nav2",
  75. NavClass2: "nav1",
  76. IsShowNav1: false,
  77. })
  78. }
  79. },
  80. goto: function (e) {
  81. var bookid = e.currentTarget.dataset.bookid;
  82. var unitid = e.currentTarget.dataset.unitid;
  83. var wordid = e.currentTarget.dataset.wordid;
  84. var isfinished = e.currentTarget.dataset.isfinished;
  85. if (!wordid)
  86. wordid=0
  87. else{
  88. wx.setStorageSync('selectedRandom', false);
  89. }
  90. wx.navigateTo({
  91. url: "./detail?bookid=" + bookid + "&unitid=" + unitid + "&wordid=" + wordid + "&isfinished=" + isfinished,
  92. });
  93. },
  94. getFinished: function () {
  95. var that = this;
  96. server.getData('GetHanziFinishedData?Category=' + this.data.BookID + '&UserID=' + app.globalData.userInfo.UserID, function (data) {
  97. if (data) {
  98. var list = that.data.List;
  99. var arrReview = wx.getStorageSync("ReviewList");
  100. for (var i = 0; i < list.length; i++) {
  101. list[i].IsFinished = false;
  102. for (var j = 0; j < data.length; j++) {
  103. if (list[i].ID == data[j].Title) {
  104. list[i].IsFinished = true;
  105. break;
  106. }
  107. }
  108. var item=list[i];
  109. for (var k = 0; k < item.Words.length; k++) {
  110. item.Words[k].ReviewCss = "";
  111. for (var l = 0; l < arrReview.length; l++) {
  112. if (arrReview[l].WordID == item.Words[k].ID) {
  113. item.Words[k].ReviewCss = "boxSelect";
  114. break;
  115. }
  116. }
  117. }
  118. }
  119. that.setData({
  120. List: list,
  121. })
  122. }
  123. });
  124. },
  125. onShareAppMessage: function () {
  126. return {
  127. title: '识字练习——让阅读赢在起点',
  128. path: 'pages/index/index',
  129. imageUrl: '../../images/07001.png',
  130. success: function (res) {
  131. },
  132. fail: function (err) {
  133. console.log(err);
  134. },
  135. complete: function (res) {
  136. console.log(res);
  137. },
  138. }
  139. },
  140. })