Browse Source

fix(useLogger): avoid string substitution in non-strings

Peter 1 năm trước cách đây
mục cha
commit
3e2233c61b
1 tập tin đã thay đổi với 14 bổ sung2 xóa
  1. 14 2
      src/composables/useLogger.ts

+ 14 - 2
src/composables/useLogger.ts

@@ -13,12 +13,24 @@ interface LoggerComposition {
 
 export function useLogger(): LoggerComposition {
   function logError(...args: OneOrMore<any>) {
-    args[0] = logPrefix + args[0]
+    if (typeof args[0] === 'string') {
+      // NOTE: Don't break console string substitution
+      args[0] = logPrefix + args[0]
+    }
+    else {
+      args.unshift(logPrefix)
+    }
     console.error(...args)
   }
 
   function logWarning(...args: OneOrMore<any>) {
-    args[0] = logPrefix + args[0]
+    if (typeof args[0] === 'string') {
+      // NOTE: Don't break console string substitution
+      args[0] = logPrefix + args[0]
+    }
+    else {
+      args.unshift(logPrefix)
+    }
     console.warn(...args)
   }