definePage.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.defineNVuePageCode = exports.definePageCode = void 0;
  4. const utils_1 = require("../../../utils");
  5. function definePageCode(pagesJson) {
  6. const importPagesCode = [];
  7. const definePagesCode = [];
  8. pagesJson.pages.forEach((page) => {
  9. if (page.style.isNVue) {
  10. return;
  11. }
  12. const pagePath = page.path;
  13. const pageIdentifier = (0, utils_1.normalizeIdentifier)(pagePath);
  14. const pagePathWithExtname = (0, utils_1.normalizePagePath)(pagePath, 'app');
  15. if (pagePathWithExtname) {
  16. if (process.env.UNI_APP_CODE_SPLITING) {
  17. // 拆分页面
  18. importPagesCode.push(`const ${pageIdentifier} = ()=>import('./${pagePathWithExtname}')`);
  19. }
  20. else {
  21. importPagesCode.push(`import ${pageIdentifier} from './${pagePathWithExtname}'`);
  22. }
  23. definePagesCode.push(`__definePage('${pagePath}',${pageIdentifier})`);
  24. }
  25. });
  26. return importPagesCode.join('\n') + '\n' + definePagesCode.join('\n');
  27. }
  28. exports.definePageCode = definePageCode;
  29. function defineNVuePageCode(pagesJson) {
  30. const importNVuePagesCode = [];
  31. pagesJson.pages.forEach((page) => {
  32. if (!page.style.isNVue) {
  33. return;
  34. }
  35. const pagePathWithExtname = (0, utils_1.normalizePagePath)(page.path, 'app');
  36. if (pagePathWithExtname) {
  37. importNVuePagesCode.push(`import('./${pagePathWithExtname}').then((res)=>{res.length})`);
  38. }
  39. });
  40. return importNVuePagesCode.join('\n');
  41. }
  42. exports.defineNVuePageCode = defineNVuePageCode;