From 32c1657ea05eff6694958b6a7641da8c1e22212e Mon Sep 17 00:00:00 2001 From: DCloud_LXH <283700113@qq.com> Date: Fri, 1 Jul 2022 15:37:42 +0800 Subject: [PATCH] chore: uni-stacktracey parse error return original --- packages/uni-stacktracey/dist/uni-stacktracey.cjs.js | 7 +++++++ packages/uni-stacktracey/dist/uni-stacktracey.es.js | 7 +++++++ packages/uni-stacktracey/src/index.ts | 6 +++++- packages/uni-stacktracey/src/stacktracey.ts | 5 +++++ 4 files changed, 24 insertions(+), 1 deletion(-) diff --git a/packages/uni-stacktracey/dist/uni-stacktracey.cjs.js b/packages/uni-stacktracey/dist/uni-stacktracey.cjs.js index a3f55965b..3a53ee496 100644 --- a/packages/uni-stacktracey/dist/uni-stacktracey.cjs.js +++ b/packages/uni-stacktracey/dist/uni-stacktracey.cjs.js @@ -181,6 +181,9 @@ class StackTracey { const trimEnd = (s, n) => s && (s.length > n ? s.slice(0, n - 1) + '…' : s); const trimStart = (s, n) => s && (s.length > n ? '…' + s.slice(-(n - 1)) : s); function parseItem(e, maxColumnWidths, isMP) { + if (!e.parsed) { + return e.beforeParse; + } const filePath = (isMP ? e.file && e.file : e.fileShort && e.fileShort) + `${e.line ? ':' + e.line : ''}` + `${e.column ? ':' + e.column : ''}`; @@ -236,6 +239,7 @@ function stacktracey(stacktrace, opts) { fileRelative: source, fileName, thirdParty: isThirdParty(sourcePath), + parsed: true, }); /** * 以 .js 结尾 @@ -357,6 +361,9 @@ function parseSourceMapContent(consumer, obj) { } } function joinItem(item) { + if (typeof item === 'string') { + return item; + } const a = item[0]; const b = item[1] ? ` ${item[1]}` : ''; const c = item[2] ? ` ${item[2]}` : ''; diff --git a/packages/uni-stacktracey/dist/uni-stacktracey.es.js b/packages/uni-stacktracey/dist/uni-stacktracey.es.js index 0061779c2..2649bb1ba 100644 --- a/packages/uni-stacktracey/dist/uni-stacktracey.es.js +++ b/packages/uni-stacktracey/dist/uni-stacktracey.es.js @@ -173,6 +173,9 @@ class StackTracey { const trimEnd = (s, n) => s && (s.length > n ? s.slice(0, n - 1) + '…' : s); const trimStart = (s, n) => s && (s.length > n ? '…' + s.slice(-(n - 1)) : s); function parseItem(e, maxColumnWidths, isMP) { + if (!e.parsed) { + return e.beforeParse; + } const filePath = (isMP ? e.file && e.file : e.fileShort && e.fileShort) + `${e.line ? ':' + e.line : ''}` + `${e.column ? ':' + e.column : ''}`; @@ -238,6 +241,7 @@ function stacktracey(stacktrace, opts) { fileRelative: source, fileName, thirdParty: isThirdParty(sourcePath), + parsed: true, }); /** * 以 .js 结尾 @@ -359,6 +363,9 @@ function parseSourceMapContent(consumer, obj) { } } function joinItem(item) { + if (typeof item === 'string') { + return item; + } const a = item[0]; const b = item[1] ? ` ${item[1]}` : ''; const c = item[2] ? ` ${item[2]}` : ''; diff --git a/packages/uni-stacktracey/src/index.ts b/packages/uni-stacktracey/src/index.ts index 4f59b113f..68e37dca1 100644 --- a/packages/uni-stacktracey/src/index.ts +++ b/packages/uni-stacktracey/src/index.ts @@ -134,6 +134,7 @@ export function stacktracey( fileRelative: source, fileName, thirdParty: isThirdParty(sourcePath), + parsed: true, }) /** @@ -290,7 +291,10 @@ interface UniStracktraceyPresetOptions { uniPlatform?: string } -function joinItem(item: string[]) { +function joinItem(item: string[] | string) { + if (typeof item === 'string') { + return item + } const a = item[0] const b = item[1] ? ` ${item[1]}` : '' const c = item[2] ? ` ${item[2]}` : '' diff --git a/packages/uni-stacktracey/src/stacktracey.ts b/packages/uni-stacktracey/src/stacktracey.ts index 81b53330c..5bff724bb 100644 --- a/packages/uni-stacktracey/src/stacktracey.ts +++ b/packages/uni-stacktracey/src/stacktracey.ts @@ -248,6 +248,9 @@ function parseItem( maxColumnWidths: StackTracey.MaxColumnWidths, isMP: boolean ) { + if (!e.parsed) { + return e.beforeParse + } const filePath = (isMP ? e.file && e.file : e.fileShort && e.fileShort) + `${e.line ? ':' + e.line : ''}` + @@ -305,6 +308,8 @@ declare namespace StackTracey { error?: Error line?: number column?: number + + parsed?: boolean } interface MaxColumnWidths { -- GitLab