/*! 这段代码用于处理模块加载和全局对象的兼容性。 */ (function() { try { // 尝试获取全局对象 (通常是浏览器环境中的 window 或 Node.js 环境中的 global) var a = Function("return this")(); // 如果获取到了全局对象并且该对象没有 Math 属性 if (a && !a.Math) { // 将全局对象(a)补充上常见的全局对象和方法 Object.assign(a, { isFinite: isFinite, // 处理数值是否有限的方法 Array: Array, // 数组构造函数 Date: Date, // 日期构造函数 Error: Error, // 错误构造函数 Function: Function, // 函数构造函数 Math: Math, // 数学对象 Object: Object, // 对象构造函数 RegExp: RegExp, // 正则表达式构造函数 String: String, // 字符串构造函数 TypeError: TypeError, // 类型错误构造函数 setTimeout: setTimeout, // 设置定时器方法 clearTimeout: clearTimeout, // 清除定时器方法 setInterval: setInterval, // 设置间隔定时器方法 clearInterval: clearInterval // 清除间隔定时器方法 }); // 如果环境中有 Reflect 对象(通常是 ECMAScript 6 引入的),则将其添加到全局对象中 if (typeof Reflect !== "undefined") { a.Reflect = Reflect; } } } catch (a) { // 如果发生异常,捕获错误并不做处理 } })(); /* 以下代码是 Webpack 的代码片段,用于动态加载和处理模块(chunk)。 */ // webpackBootstrap 开始 (function(modules) { // 安装 JSONP 回调用于 chunk 加载 function webpackJsonpCallback(data) { var chunkIds = data[0]; // 当前 chunk 的 ID var moreModules = data[1]; // 当前 chunk 中的模块 var executeModules = data[2]; // 要执行的模块 // 将 "moreModules" 添加到模块对象中,并标记所有 "chunkIds" 为已加载,并触发回调 var moduleId, chunkId, i = 0, resolves = []; for (; i < chunkIds.length; i++) { chunkId = chunkIds[i]; // 如果该 chunk 已加载,则将其回调加入 resolves 队列 if (Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) { resolves.push(installedChunks[chunkId][0]); } installedChunks[chunkId] = 0; // 标记当前 chunk 已加载 } // 将模块添加到模块对象中 for (moduleId in moreModules) { if (Object.prototype.hasOwnProperty.call(moreModules, moduleId)) { modules[moduleId] = moreModules[moduleId]; } } // 如果父级 JSONP 函数存在,调用它(用于处理嵌套的 chunk 加载) if (parentJsonpFunction) parentJsonpFunction(data); // 执行已解决的模块(即已加载的模块) while (resolves.length) { resolves.shift()(); } // 将从当前 chunk 加载的条目模块推入延迟执行列表 deferredModules.push.apply(deferredModules, executeModules || []); // 当所有 chunk 准备好时,运行延迟的模块 return checkDeferredModules(); } // 检查并执行延迟加载的模块 function checkDeferredModules() { var result; // 遍历所有延迟的模块 for (var i = 0; i < deferredModules.length; i++) { var deferredModule = deferredModules[i]; var fulfilled = true; // 检查所有依赖项是否已加载 for (var j = 1; j < deferredModule.length; j++) { var depId = deferredModule[j]; if (installedChunks[depId] !== 0) fulfilled = false; } // 如果所有依赖已满足,则加载该模块 if (fulfilled) { deferredModules.splice(i--, 1); // 从延迟模块列表中移除该模块 result = __webpack_require__(__webpack_require__.s = deferredModule[0]); } } /******/ /******/ return result; /******/ } /******/ /******/ /// 模块缓存对象,用于存储已加载的模块。 // 这样一来,当模块被加载一次后,后续对该模块的请求将直接返回缓存中的模块,避免重复加载。 var installedModules = {}; /* * 存储已加载的 CSS chunk(代码块)对象。 * 在这里,"common/runtime" 是一个 CSS chunk 的标识符,0 表示它已经被加载。 * Webpack 会根据配置分离不同的 chunk,CSS 通常会单独打包。 */ var installedCssChunks = { "common/runtime": 0 }; // 存储已加载和正在加载的 JavaScript chunk(代码块)对象。 // undefined = chunk 尚未加载,null = chunk 已预加载或预取, // Promise = chunk 正在加载,0 = chunk 已加载。 // "common/runtime" 初始值为 0,表示该 chunk 已加载。 var installedChunks = { "common/runtime": 0 }; // 存储延迟加载的模块。当模块需要异步加载时,它们会被推入这个队列,待所有依赖满足后执行。 var deferredModules = []; /* * 获取 chunk 脚本的路径,WebPack 会根据配置动态生成加载文件的路径。 * chunkId 是当前加载的 chunk 的 ID,通常是 chunk 名称。 * `__webpack_require__.p` 是 Webpack 配置的公共路径,通常是资源文件存放的路径。 * 例如,`chunkId` 可能是 "1",路径可能是 `/static/js/1.js`。 */ function jsonpScriptSrc(chunkId) { return __webpack_require__.p + "" + chunkId + ".js"; } /* * `__webpack_require__` 是 Webpack 打包后的模块加载函数,类似于 CommonJS 的 require。 * 它用来加载模块并返回模块的 `exports`。 * 参数 `moduleId` 是模块的 ID,通常是模块的文件名或 chunk ID。 */ function __webpack_require__(moduleId) { // 1. 检查模块是否已经在缓存中(即是否已加载过) if(installedModules[moduleId]) { // 如果模块已经加载过,则直接返回缓存中的模块的 exports(导出的对象) return installedModules[moduleId].exports; } // 2. 如果模块尚未加载,创建一个新的模块并放入缓存 var module = installedModules[moduleId] = { i: moduleId, // 模块 ID l: false, // 模块加载标记,表示模块尚未加载 exports: {} // 模块的导出对象,模块的功能和数据会挂载到这个对象上 }; // 3. 执行该模块的代码(将模块的功能添加到 exports 中) // `modules[moduleId]` 存储了模块的定义(即模块代码),`call` 用于调用该模块的函数并传入需要的参数。 modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); // 4. 标记模块为已加载 module.l = true; // 5. 返回模块的 exports 对象,即模块对外暴露的内容 return module.exports; } /* * `__webpack_require__.e` 是 Webpack 为动态加载模块提供的一个方法。 * 它允许异步加载额外的 chunks(代码块),例如通过 `import()` 动态加载模块。 * 参数 `chunkId` 是要加载的 chunk 的 ID,通常是一个数字或字符串。 * Webpack 会根据 `chunkId` 加载相应的 JavaScript 文件,处理异步依赖关系。 */ __webpack_require__.e = function requireEnsure(chunkId) { var promises = []; // 存储等待加载的 Promise 对象 /******/ /******/ /******/ // mini-css-extract-plugin CSS loading /******/ var cssChunks = {"components/uni-phone/index":1,"pages/common/Navbar/navbar":1,"components/uni-nav-bar/uni-nav-bar":1,"components/uni-piker/index":1,"components/uni-popup/index":1,"node-modules/@dcloudio/uni-ui/lib/uni-list-item/uni-list-item":1,"uni_modules/uni-list/components/uni-list-item/uni-list-item":1,"uni_modules/uni-list/components/uni-list/uni-list":1,"uni_modules/uni-popup/components/uni-popup/uni-popup":1,"components/empty/empty":1,"components/reach-bottom/reach-bottom":1,"pages/common/simple-address/simple-address":1,"node-modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput":1,"uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput":1,"components/uni-icons/uni-icons":1,"components/uni-status-bar/uni-status-bar":1,"uni_modules/uni-badge/components/uni-badge/uni-badge":1}; /******/ if(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]); /******/ else if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) { /******/ promises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) { /******/ var href = "" + ({"components/uni-phone/index":"components/uni-phone/index","pages/common/Navbar/navbar":"pages/common/Navbar/navbar","components/uni-nav-bar/uni-nav-bar":"components/uni-nav-bar/uni-nav-bar","components/uni-piker/index":"components/uni-piker/index","components/uni-popup/index":"components/uni-popup/index","node-modules/@dcloudio/uni-ui/lib/uni-list-item/uni-list-item":"node-modules/@dcloudio/uni-ui/lib/uni-list-item/uni-list-item","uni_modules/uni-list/components/uni-list-item/uni-list-item":"uni_modules/uni-list/components/uni-list-item/uni-list-item","uni_modules/uni-list/components/uni-list/uni-list":"uni_modules/uni-list/components/uni-list/uni-list","uni_modules/uni-popup/components/uni-popup/uni-popup":"uni_modules/uni-popup/components/uni-popup/uni-popup","components/empty/empty":"components/empty/empty","components/reach-bottom/reach-bottom":"components/reach-bottom/reach-bottom","pages/common/simple-address/simple-address":"pages/common/simple-address/simple-address","node-modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput":"node-modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput","uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput":"uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput","components/uni-icons/uni-icons":"components/uni-icons/uni-icons","components/uni-status-bar/uni-status-bar":"components/uni-status-bar/uni-status-bar","uni_modules/uni-badge/components/uni-badge/uni-badge":"uni_modules/uni-badge/components/uni-badge/uni-badge","uni_modules/uni-transition/components/uni-transition/uni-transition":"uni_modules/uni-transition/components/uni-transition/uni-transition"}[chunkId]||chunkId) + ".wxss"; /******/ var fullhref = __webpack_require__.p + href; /******/ var existingLinkTags = document.getElementsByTagName("link"); /******/ for(var i = 0; i < existingLinkTags.length; i++) { /******/ var tag = existingLinkTags[i]; /******/ var dataHref = tag.getAttribute("data-href") || tag.getAttribute("href"); /******/ if(tag.rel === "stylesheet" && (dataHref === href || dataHref === fullhref)) return resolve(); /******/ } /******/ // 获取页面中所有已存在的