Jacob
2026-10-14 321c0b34cf4bb21305d3c345d19d233e67ee141f
feat: 全局引入页面日志 mixin 打印页面地址与入参
1个文件已添加
1个文件已修改
32 ■■■■■ 已修改文件
main.js 4 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mixins/pageLog.js 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
main.js
....@@ -222,6 +222,10 @@
222222
223223 import miniCollect from './libs/miniCollect';
224224 Vue.mixin(miniCollect);
225
+
226
+// 全局页面日志 mixin:进入页面时打印页面地址与所有入参
227
+import pageLog from '@/mixins/pageLog';
228
+Vue.mixin(pageLog);
225229 import BigNumber from 'bignumber.js';
226230 Vue.prototype.toNumber = function(number) {
227231 if (isNaN(number)) {
mixins/pageLog.js
....@@ -0,0 +1,28 @@
1
+/**
2
+ * 全局页面日志 mixin
3
+ * 每个页面 onLoad 时打印:进入页面路径 + 完整地址 + 所有入参 options
4
+ *
5
+ * 上线前可置 ENABLE_PAGE_LOG 为 false 关闭
6
+ */
7
+const ENABLE_PAGE_LOG = true;
8
+
9
+export default {
10
+ onLoad(options = {}) {
11
+ if (!ENABLE_PAGE_LOG) return;
12
+
13
+ // onLoad 时当前页面已入栈,可以从页面栈读取路径
14
+ const pages = getCurrentPages();
15
+ const curPage = pages[pages.length - 1] || {};
16
+ const route = curPage.route || (curPage.$page && curPage.$page.route) || '';
17
+ const fullPath = (curPage.$page && curPage.$page.fullPath) || '';
18
+
19
+ console.log('\n┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓');
20
+ console.log('┃ 📄 进入页面 [' + new Date().toLocaleString() + ']');
21
+ console.log('┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫');
22
+ console.log('┃ 页面路径: ' + (route || '(未知)'));
23
+ console.log('┃ 完整地址: ' + (fullPath || '(未知)'));
24
+ console.log('┃ 入参 options:');
25
+ console.log(options || {});
26
+ console.log('┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\n');
27
+ }
28
+}