web.js 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192
  1. 'use strict';
  2. /**
  3. * 前端所需js
  4. *
  5. * {String} webPath: 记录 合并压缩后的 文件存放的路径
  6. * {String[]} commonFiles: 所有页面通用的js包文件
  7. * {Object} controller: 根据controller和action来区分不同的页面数据
  8. * - files: 当前页面所需的js包文件
  9. * - mergeFiles: 当前页面所需 合并压缩的 js文件
  10. * - mergeFile: 合并压缩后 生成的js文件名
  11. *
  12. * 在app中运行合并压缩代码,运行后数据为app.jsFiles,示例(ledger)如下:
  13. * app.jsFiles = {
  14. * common: String[]
  15. * controller1: {
  16. * action1: String[]
  17. * action2: String[]
  18. * }
  19. * }
  20. *
  21. * 在Controller中使用时,需添加到renderData.jsFiles中,并调用Layout方法
  22. * 没有该值时,Layout方法会自动加载app.jsFiles.common
  23. * 有该值时,例如台账审核页面,renderData.jsFiles = app.jsFiles.ledger.audit = ['/public/js/spreadjs/sheets/gc.spread.sheets.all.10.0.1.min.js', '/public/js/web/ledger_audit.min.1.0.0.js']
  24. * 则layout方法会同时加载app.jsFiles.common与renderData.jsFiles
  25. * 加载位置为head
  26. *
  27. * 如果页面无需合并压缩js文件,可以直接添加到JsFiles.controller.controller1.action1.files,也可以直接添加到调用的ejs模板中
  28. *
  29. * @author Mai
  30. * @date 2019/1/10
  31. * @version
  32. */
  33. const JsFiles = {
  34. webPath: "/public/js/web/",
  35. commonFiles: [
  36. "/public/js/jquery/jquery-3.2.1.min.js",
  37. "/public/js/jquery/jquery-ui.js",
  38. "/public/js/jquery/jquery.validate.js",
  39. "/public/js/messages_zh.js",
  40. "/public/js/popper/popper.min.js",
  41. "/public/js/bootstrap/bootstrap.min.js",
  42. "/public/js/global.js",
  43. "/public/js/vue/vue.js",
  44. "/public/js/component/input.js",
  45. "/public/js/cookies.js",
  46. "/public/js/jquery-contextmenu/jquery.ui.position.min.js",
  47. "/public/js/jquery-contextmenu/jquery.contextMenu.min.js",
  48. "/public/js/lodash.js",
  49. "/public/js/lz-string/lz-string.js",
  50. ],
  51. controller: {
  52. tender: {
  53. list: {
  54. files: [
  55. "/public/js/ztree/jquery.ztree.core.js",
  56. "/public/js/ztree/jquery.ztree.exedit.js",
  57. ],
  58. mergeFiles: ["/public/js/tender_list.js"],
  59. mergeFile: 'tender_list',
  60. },
  61. progress: {
  62. files: [
  63. "/public/js/ztree/jquery.ztree.core.js",
  64. "/public/js/ztree/jquery.ztree.exedit.js",
  65. ],
  66. mergeFiles: ["/public/js/tender_list_progress.js"],
  67. mergeFile: 'tender_list_progress',
  68. },
  69. manage: {
  70. files: [
  71. "/public/js/ztree/jquery.ztree.core.js",
  72. "/public/js/ztree/jquery.ztree.exedit.js",
  73. "/public/js/moment/moment.min.js",
  74. ],
  75. mergeFiles: ["/public/js/tender_list_manage.js"],
  76. mergeFile: 'tender_list_manage',
  77. }
  78. },
  79. ledger: {
  80. explode: {
  81. files: [
  82. "/public/js/js-xlsx/xlsx.full.min.js",
  83. "/public/js/js-xlsx/xlsx.utils.js",
  84. "/public/js/spreadjs/sheets/gc.spread.sheets.all.10.0.1.min.js",
  85. ],
  86. mergeFiles: [
  87. "/public/js/div_resizer.js",
  88. "/public/js/spreadjs_rela/spreadjs_zh.js",
  89. "/public/js/path_tree.js",
  90. "/public/js/ledger_tree_col.js",
  91. "/public/js/ledger.js",
  92. ],
  93. mergeFile: 'explode',
  94. },
  95. audit: {
  96. files: [
  97. "/public/js/spreadjs/sheets/gc.spread.sheets.all.10.0.1.min.js",
  98. ],
  99. mergeFiles: [
  100. "/public/js/div_resizer.js",
  101. "/public/js/spreadjs_rela/spreadjs_zh.js",
  102. "/public/js/path_tree.js",
  103. "/public/js/ledger_audit.js",
  104. ],
  105. mergeFile: 'ledger_audit',
  106. }
  107. },
  108. stage: {
  109. // 本期计量台账
  110. index: {
  111. files: [
  112. "/public/js/spreadjs/sheets/gc.spread.sheets.all.10.0.1.min.js",
  113. ],
  114. mergeFiles: [
  115. "/public/js/div_resizer.js",
  116. "/public/js/spreadjs_rela/spreadjs_zh.js",
  117. "/public/js/path_tree.js",
  118. "/public/js/stage.js",
  119. "/public/js/stage_audit.js",
  120. ],
  121. mergeFile: 'stage',
  122. },
  123. detail: {
  124. files: [
  125. "/public/js/spreadjs/sheets/gc.spread.sheets.all.10.0.1.min.js",
  126. "/public/js/html2canvas/html2canvas.min.js",
  127. "/public/js/html2canvas/canvas2image.js",
  128. ],
  129. mergeFiles: [
  130. "/public/js/spreadjs_rela/spreadjs_zh.js",
  131. "/public/js/path_tree.js",
  132. "/public/js/stage_im.js",
  133. "/public/js/stage_detail.js",
  134. "/public/js/stage_audit.js",
  135. ],
  136. mergeFile: 'stage_detail',
  137. },
  138. pay: {
  139. files: [
  140. "/public/js/spreadjs/sheets/gc.spread.sheets.all.10.0.1.min.js",
  141. ],
  142. mergeFiles: [
  143. "/public/js/spreadjs_rela/spreadjs_zh.js",
  144. "/public/js/stage_pay.js",
  145. "/public/js/stage_audit.js",
  146. ],
  147. mergeFile: 'stage_pay',
  148. },
  149. change: {
  150. files: [
  151. "/public/js/spreadjs/sheets/gc.spread.sheets.all.10.0.1.min.js",
  152. ],
  153. mergeFiles: [
  154. "/public/js/div_resizer.js",
  155. "/public/js/spreadjs_rela/spreadjs_zh.js",
  156. "/public/js/path_tree.js",
  157. "/public/js/stage_change.js",
  158. ],
  159. mergeFile: 'stage_change',
  160. },
  161. gather: {
  162. files: [
  163. "/public/js/spreadjs/sheets/gc.spread.sheets.all.10.0.1.min.js",
  164. ],
  165. mergeFiles: [
  166. "/public/js/div_resizer.js",
  167. "/public/js/spreadjs_rela/spreadjs_zh.js",
  168. "/public/js/path_tree.js",
  169. "/public/js/gcl_gather.js",
  170. "/public/js/stage_gather.js",
  171. ],
  172. mergeFile: 'stage_gather',
  173. },
  174. compare: {
  175. files: [
  176. "/public/js/spreadjs/sheets/gc.spread.sheets.all.10.0.1.min.js",
  177. ],
  178. mergeFiles: [
  179. "/public/js/div_resizer.js",
  180. "/public/js/spreadjs_rela/spreadjs_zh.js",
  181. "/public/js/path_tree.js",
  182. "/public/js/stage_compare.js",
  183. ],
  184. mergeFile: 'stage_compare',
  185. }
  186. }
  187. }
  188. };
  189. module.exports = JsFiles;