| 123456789101112131415161718192021222324252627282930313233343536 |
- "use strict";
- var __importDefault = (this && this.__importDefault) || function (mod) {
- return (mod && mod.__esModule) ? mod : { "default": mod };
- };
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.uniTimestampMiddleware = void 0;
- const url_1 = require("url");
- const path_1 = __importDefault(require("path"));
- const uni_cli_shared_1 = require("@dcloudio/uni-cli-shared");
- function uniTimestampMiddleware(server) {
- return async function timestampMiddleware(req, _, next) {
- // 当页面被作为组件引用时,会导致history刷新该页面直接显示js代码,因为该页面已被缓存为了module,
- // https://github.com/vitejs/vite/blob/702d50315535c189151c67d33e4a22124f926bed/packages/vite/src/node/server/transformRequest.ts#L52
- // /pages/tabBar/API/API
- let { url } = req;
- if (url) {
- const base = server.config.base;
- const parsed = (0, url_1.parse)(url);
- let newUrl = url;
- if ((parsed.pathname || '/').startsWith(base)) {
- newUrl = newUrl.replace(base, '/');
- }
- if (!path_1.default.extname(newUrl) &&
- !newUrl.endsWith('/') &&
- !newUrl.includes('?')) {
- const module = await server.moduleGraph.getModuleByUrl(newUrl);
- if (module && module.file && uni_cli_shared_1.EXTNAME_VUE_RE.test(module.file)) {
- // /pages/tabBar/API/API => /pages/tabBar/API/API?__t__=time
- req.url = url + '?__t__=' + Date.now();
- }
- }
- }
- next();
- };
- }
- exports.uniTimestampMiddleware = uniTimestampMiddleware;
|