|
|
@@ -2,9 +2,9 @@
|
|
|
> tolan-frontend@0.1.0 start
|
|
|
> react-scripts start
|
|
|
|
|
|
-(node:35270) [DEP_WEBPACK_DEV_SERVER_ON_AFTER_SETUP_MIDDLEWARE] DeprecationWarning: 'onAfterSetupMiddleware' option is deprecated. Please use the 'setupMiddlewares' option.
|
|
|
+(node:41108) [DEP_WEBPACK_DEV_SERVER_ON_AFTER_SETUP_MIDDLEWARE] DeprecationWarning: 'onAfterSetupMiddleware' option is deprecated. Please use the 'setupMiddlewares' option.
|
|
|
(Use `node --trace-deprecation ...` to show where the warning was created)
|
|
|
-(node:35270) [DEP_WEBPACK_DEV_SERVER_ON_BEFORE_SETUP_MIDDLEWARE] DeprecationWarning: 'onBeforeSetupMiddleware' option is deprecated. Please use the 'setupMiddlewares' option.
|
|
|
+(node:41108) [DEP_WEBPACK_DEV_SERVER_ON_BEFORE_SETUP_MIDDLEWARE] DeprecationWarning: 'onBeforeSetupMiddleware' option is deprecated. Please use the 'setupMiddlewares' option.
|
|
|
Starting the development server...
|
|
|
|
|
|
Compiled successfully!
|
|
|
@@ -25,17 +25,15 @@ Compiling...
|
|
|
Compiled with warnings.
|
|
|
|
|
|
[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
+src/components/RecordingPlayback.tsx
|
|
|
+ Line 1:46: 'useMemo' is defined but never used @typescript-eslint/no-unused-vars
|
|
|
|
|
|
Search for the keywords to learn more about each warning.
|
|
|
To ignore, add // eslint-disable-next-line to the line before.
|
|
|
|
|
|
WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
+src/components/RecordingPlayback.tsx
|
|
|
+ Line 1:46: 'useMemo' is defined but never used @typescript-eslint/no-unused-vars
|
|
|
|
|
|
webpack compiled with 1 warning
|
|
|
Compiling...
|
|
|
@@ -43,17 +41,15 @@ No issues found.
|
|
|
Compiled with warnings.
|
|
|
|
|
|
[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
+src/components/RecordingPlayback.tsx
|
|
|
+ Line 1:46: 'useMemo' is defined but never used @typescript-eslint/no-unused-vars
|
|
|
|
|
|
Search for the keywords to learn more about each warning.
|
|
|
To ignore, add // eslint-disable-next-line to the line before.
|
|
|
|
|
|
WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
+src/components/RecordingPlayback.tsx
|
|
|
+ Line 1:46: 'useMemo' is defined but never used @typescript-eslint/no-unused-vars
|
|
|
|
|
|
webpack compiled with 1 warning
|
|
|
No issues found.
|
|
|
@@ -61,966 +57,30 @@ Compiling...
|
|
|
Compiled with warnings.
|
|
|
|
|
|
[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
+src/components/RecordingPlayback.tsx
|
|
|
+ Line 1:46: 'useMemo' is defined but never used @typescript-eslint/no-unused-vars
|
|
|
|
|
|
Search for the keywords to learn more about each warning.
|
|
|
To ignore, add // eslint-disable-next-line to the line before.
|
|
|
|
|
|
WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
+src/components/RecordingPlayback.tsx
|
|
|
+ Line 1:46: 'useMemo' is defined but never used @typescript-eslint/no-unused-vars
|
|
|
|
|
|
webpack compiled with 1 warning
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-ERROR in src/hooks/useAudio.ts:140:30
|
|
|
-TS2339: Property 'isCurrentlyRecording' does not exist on type 'AudioRecorder'.
|
|
|
- 138 |
|
|
|
- 139 | // 检查录音器的实际状态,而不仅仅依赖Redux状态
|
|
|
- > 140 | if (!recorderRef.current.isCurrentlyRecording()) {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^
|
|
|
- 141 | console.warn('[useAudio] 尝试停止录音但录音器当前没有在录音');
|
|
|
- 142 | return null;
|
|
|
- 143 | }
|
|
|
-
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-Files successfully emitted, waiting for typecheck results...
|
|
|
-Issues checking in progress...
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 196:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 196:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-Files successfully emitted, waiting for typecheck results...
|
|
|
-Issues checking in progress...
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 196:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 256:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 196:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 256:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 196:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 256:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 196:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 256:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 196:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 256:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 196:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 256:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 196:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 256:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 196:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 256:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 196:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 256:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 196:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 256:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-Files successfully emitted, waiting for typecheck results...
|
|
|
-Issues checking in progress...
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Failed to compile.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/hooks/useAudio.ts
|
|
|
-Syntax error: 'catch' or 'finally' expected (173:3)
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-ERROR in ./src/hooks/useAudio.ts
|
|
|
-Module build failed (from ./node_modules/babel-loader/lib/index.js):
|
|
|
-SyntaxError: /Users/wuzilong/work/00code/Tolan/frontend/src/hooks/useAudio.ts: Missing catch or finally clause. (145:4)
|
|
|
-
|
|
|
- 143 | }
|
|
|
- 144 |
|
|
|
-> 145 | try {
|
|
|
- | ^
|
|
|
- 146 | console.log('[useAudio] 准备停止录音器...');
|
|
|
- 147 |
|
|
|
- 148 | // 停止计时
|
|
|
- at constructor (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:367:19)
|
|
|
- at TypeScriptParserMixin.raise (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:6630:19)
|
|
|
- at TypeScriptParserMixin.parseTryStatement (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:13233:12)
|
|
|
- at TypeScriptParserMixin.parseStatementContent (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12813:21)
|
|
|
- at TypeScriptParserMixin.parseStatementContent (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9532:18)
|
|
|
- at TypeScriptParserMixin.parseStatementLike (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12776:17)
|
|
|
- at TypeScriptParserMixin.parseStatementListItem (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12756:17)
|
|
|
- at TypeScriptParserMixin.parseBlockOrModuleBlockBody (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:13325:61)
|
|
|
- at TypeScriptParserMixin.parseBlockBody (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:13318:10)
|
|
|
- at TypeScriptParserMixin.parseBlock (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:13306:10)
|
|
|
- at TypeScriptParserMixin.parseFunctionBody (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12110:24)
|
|
|
- at TypeScriptParserMixin.parseArrowExpression (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12085:10)
|
|
|
- at TypeScriptParserMixin.parseAsyncArrowFromCallExpression (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11268:10)
|
|
|
- at TypeScriptParserMixin.parseAsyncArrowFromCallExpression (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9786:18)
|
|
|
- at TypeScriptParserMixin.parseCoverCallAndAsyncArrowHead (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11198:27)
|
|
|
- at TypeScriptParserMixin.parseSubscript (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11124:19)
|
|
|
- at TypeScriptParserMixin.parseSubscript (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9358:18)
|
|
|
- at TypeScriptParserMixin.parseSubscripts (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11098:19)
|
|
|
- at TypeScriptParserMixin.parseExprSubscripts (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11089:17)
|
|
|
- at TypeScriptParserMixin.parseUpdate (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11070:21)
|
|
|
- at TypeScriptParserMixin.parseMaybeUnary (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11050:23)
|
|
|
- at TypeScriptParserMixin.parseMaybeUnary (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9857:18)
|
|
|
- at TypeScriptParserMixin.parseMaybeUnaryOrPrivate (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10903:61)
|
|
|
- at TypeScriptParserMixin.parseExprOps (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10908:23)
|
|
|
- at TypeScriptParserMixin.parseMaybeConditional (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10885:23)
|
|
|
- at TypeScriptParserMixin.parseMaybeAssign (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10835:21)
|
|
|
- at TypeScriptParserMixin.parseMaybeAssign (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9806:20)
|
|
|
- at /Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10804:39
|
|
|
- at TypeScriptParserMixin.allowInAnd (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12436:12)
|
|
|
- at TypeScriptParserMixin.parseMaybeAssignAllowIn (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10804:17)
|
|
|
- at TypeScriptParserMixin.parseMaybeAssignAllowInOrVoidPattern (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12503:17)
|
|
|
- at TypeScriptParserMixin.parseExprListItem (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12185:18)
|
|
|
- at TypeScriptParserMixin.parseCallExpressionArguments (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11256:22)
|
|
|
- at TypeScriptParserMixin.parseCoverCallAndAsyncArrowHead (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11190:29)
|
|
|
- at TypeScriptParserMixin.parseSubscript (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11124:19)
|
|
|
- at TypeScriptParserMixin.parseSubscript (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9358:18)
|
|
|
- at TypeScriptParserMixin.parseSubscripts (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11098:19)
|
|
|
- at TypeScriptParserMixin.parseExprSubscripts (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11089:17)
|
|
|
- at TypeScriptParserMixin.parseUpdate (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11070:21)
|
|
|
- at TypeScriptParserMixin.parseMaybeUnary (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11050:23)
|
|
|
- at TypeScriptParserMixin.parseMaybeUnary (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9857:18)
|
|
|
- at TypeScriptParserMixin.parseMaybeUnaryOrPrivate (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10903:61)
|
|
|
- at TypeScriptParserMixin.parseExprOps (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10908:23)
|
|
|
- at TypeScriptParserMixin.parseMaybeConditional (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10885:23)
|
|
|
- at TypeScriptParserMixin.parseMaybeAssign (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10835:21)
|
|
|
- at TypeScriptParserMixin.parseMaybeAssign (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9806:20)
|
|
|
- at /Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10804:39
|
|
|
- at TypeScriptParserMixin.allowInAnd (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12431:16)
|
|
|
- at TypeScriptParserMixin.parseMaybeAssignAllowIn (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10804:17)
|
|
|
- at TypeScriptParserMixin.parseVar (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:13393:91)
|
|
|
-
|
|
|
-ERROR in [eslint]
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 173:3: Parsing error: 'catch' or 'finally' expected
|
|
|
-
|
|
|
-webpack compiled with 2 errors and 1 warning
|
|
|
-Files successfully emitted, waiting for typecheck results...
|
|
|
-Issues checking in progress...
|
|
|
-ERROR in src/hooks/useAudio.ts:131:25
|
|
|
-TS2554: Expected 2 arguments, but got 1.
|
|
|
- 129 |
|
|
|
- 130 | // 停止录音
|
|
|
- > 131 | const stopRecording = useCallback(async (): Promise<Blob | null> => {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 132 | console.log('[useAudio] stopRecording 开始执行,当前状态:', {isRecording, hasRecorder: !!recorderRef.current});
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 133 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 134 | if (!recorderRef.current) {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 135 | console.warn('[useAudio] 尝试停止录音但录音器未初始化');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 136 | return null;
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 137 | }
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 138 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 139 | // 检查录音器的实际状态,而不仅仅依赖Redux状态
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 140 | if (!recorderRef.current.isCurrentlyRecording()) {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 141 | console.warn('[useAudio] 尝试停止录音但录音器当前没有在录音');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 142 | return null;
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 143 | }
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 144 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 145 | try {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 146 | console.log('[useAudio] 准备停止录音器...');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 147 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 148 | // 停止计时
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 149 | if (recordingTimerRef.current) {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 150 | clearInterval(recordingTimerRef.current);
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 151 | recordingTimerRef.current = null;
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 152 | console.log('[useAudio] 录音计时器已停止');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 153 | }
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 154 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 155 | dispatch(setRecordingStatus('processing'));
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 156 | console.log('[useAudio] 调用录音器的stopRecording方法...');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 157 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 158 | try {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 159 | const audioBlob = await recorderRef.current.stopRecording();
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 160 | console.log('[useAudio] 录音器stopRecording返回结果:', audioBlob ? `Blob(${audioBlob.size} bytes)` : 'null');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 161 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 162 | dispatch(resetRecording());
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 163 | console.log('[useAudio] stopRecording 执行完成,返回音频数据');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 164 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 165 | return audioBlob;
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 166 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 167 | } catch (error) {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 168 | console.error('[useAudio] 录音停止失败:', error);
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 169 | dispatch(setError(error instanceof Error ? error.message : '录音停止失败'));
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 170 | dispatch(resetRecording());
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 171 | return null;
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 172 | }
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 173 | }, [isRecording, dispatch]);
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- 174 |
|
|
|
- 175 | // 取消录音
|
|
|
- 176 | const cancelRecording = useCallback(() => {
|
|
|
-
|
|
|
-ERROR in src/hooks/useAudio.ts:173:4
|
|
|
-TS1472: 'catch' or 'finally' expected.
|
|
|
- 171 | return null;
|
|
|
- 172 | }
|
|
|
- > 173 | }, [isRecording, dispatch]);
|
|
|
- | ^
|
|
|
- 174 |
|
|
|
- 175 | // 取消录音
|
|
|
- 176 | const cancelRecording = useCallback(() => {
|
|
|
-
|
|
|
-ERROR in src/hooks/useAudio.ts:173:29
|
|
|
-TS1005: ';' expected.
|
|
|
- 171 | return null;
|
|
|
- 172 | }
|
|
|
- > 173 | }, [isRecording, dispatch]);
|
|
|
- | ^
|
|
|
- 174 |
|
|
|
- 175 | // 取消录音
|
|
|
- 176 | const cancelRecording = useCallback(() => {
|
|
|
-
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 211:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 271:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 211:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 271:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 211:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 271:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 211:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 271:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Failed to compile.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/hooks/useAudio.ts
|
|
|
-Syntax error: 'catch' or 'finally' expected (180:3)
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-ERROR in ./src/hooks/useAudio.ts
|
|
|
-Module build failed (from ./node_modules/babel-loader/lib/index.js):
|
|
|
-SyntaxError: /Users/wuzilong/work/00code/Tolan/frontend/src/hooks/useAudio.ts: Missing catch or finally clause. (145:4)
|
|
|
-
|
|
|
- 143 | }
|
|
|
- 144 |
|
|
|
-> 145 | try {
|
|
|
- | ^
|
|
|
- 146 | console.log('[useAudio] 准备停止录音器...');
|
|
|
- 147 |
|
|
|
- 148 | // 停止计时
|
|
|
- at constructor (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:367:19)
|
|
|
- at TypeScriptParserMixin.raise (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:6630:19)
|
|
|
- at TypeScriptParserMixin.parseTryStatement (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:13233:12)
|
|
|
- at TypeScriptParserMixin.parseStatementContent (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12813:21)
|
|
|
- at TypeScriptParserMixin.parseStatementContent (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9532:18)
|
|
|
- at TypeScriptParserMixin.parseStatementLike (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12776:17)
|
|
|
- at TypeScriptParserMixin.parseStatementListItem (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12756:17)
|
|
|
- at TypeScriptParserMixin.parseBlockOrModuleBlockBody (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:13325:61)
|
|
|
- at TypeScriptParserMixin.parseBlockBody (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:13318:10)
|
|
|
- at TypeScriptParserMixin.parseBlock (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:13306:10)
|
|
|
- at TypeScriptParserMixin.parseFunctionBody (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12110:24)
|
|
|
- at TypeScriptParserMixin.parseArrowExpression (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12085:10)
|
|
|
- at TypeScriptParserMixin.parseAsyncArrowFromCallExpression (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11268:10)
|
|
|
- at TypeScriptParserMixin.parseAsyncArrowFromCallExpression (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9786:18)
|
|
|
- at TypeScriptParserMixin.parseCoverCallAndAsyncArrowHead (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11198:27)
|
|
|
- at TypeScriptParserMixin.parseSubscript (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11124:19)
|
|
|
- at TypeScriptParserMixin.parseSubscript (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9358:18)
|
|
|
- at TypeScriptParserMixin.parseSubscripts (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11098:19)
|
|
|
- at TypeScriptParserMixin.parseExprSubscripts (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11089:17)
|
|
|
- at TypeScriptParserMixin.parseUpdate (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11070:21)
|
|
|
- at TypeScriptParserMixin.parseMaybeUnary (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11050:23)
|
|
|
- at TypeScriptParserMixin.parseMaybeUnary (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9857:18)
|
|
|
- at TypeScriptParserMixin.parseMaybeUnaryOrPrivate (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10903:61)
|
|
|
- at TypeScriptParserMixin.parseExprOps (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10908:23)
|
|
|
- at TypeScriptParserMixin.parseMaybeConditional (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10885:23)
|
|
|
- at TypeScriptParserMixin.parseMaybeAssign (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10835:21)
|
|
|
- at TypeScriptParserMixin.parseMaybeAssign (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9806:20)
|
|
|
- at /Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10804:39
|
|
|
- at TypeScriptParserMixin.allowInAnd (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12436:12)
|
|
|
- at TypeScriptParserMixin.parseMaybeAssignAllowIn (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10804:17)
|
|
|
- at TypeScriptParserMixin.parseMaybeAssignAllowInOrVoidPattern (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12503:17)
|
|
|
- at TypeScriptParserMixin.parseExprListItem (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12185:18)
|
|
|
- at TypeScriptParserMixin.parseCallExpressionArguments (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11256:22)
|
|
|
- at TypeScriptParserMixin.parseCoverCallAndAsyncArrowHead (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11190:29)
|
|
|
- at TypeScriptParserMixin.parseSubscript (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11124:19)
|
|
|
- at TypeScriptParserMixin.parseSubscript (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9358:18)
|
|
|
- at TypeScriptParserMixin.parseSubscripts (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11098:19)
|
|
|
- at TypeScriptParserMixin.parseExprSubscripts (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11089:17)
|
|
|
- at TypeScriptParserMixin.parseUpdate (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11070:21)
|
|
|
- at TypeScriptParserMixin.parseMaybeUnary (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:11050:23)
|
|
|
- at TypeScriptParserMixin.parseMaybeUnary (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9857:18)
|
|
|
- at TypeScriptParserMixin.parseMaybeUnaryOrPrivate (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10903:61)
|
|
|
- at TypeScriptParserMixin.parseExprOps (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10908:23)
|
|
|
- at TypeScriptParserMixin.parseMaybeConditional (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10885:23)
|
|
|
- at TypeScriptParserMixin.parseMaybeAssign (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10835:21)
|
|
|
- at TypeScriptParserMixin.parseMaybeAssign (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:9806:20)
|
|
|
- at /Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10804:39
|
|
|
- at TypeScriptParserMixin.allowInAnd (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:12431:16)
|
|
|
- at TypeScriptParserMixin.parseMaybeAssignAllowIn (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:10804:17)
|
|
|
- at TypeScriptParserMixin.parseVar (/Users/wuzilong/work/00code/Tolan/frontend/node_modules/@babel/parser/lib/index.js:13393:91)
|
|
|
-
|
|
|
-ERROR in [eslint]
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 180:3: Parsing error: 'catch' or 'finally' expected
|
|
|
-
|
|
|
-webpack compiled with 2 errors and 1 warning
|
|
|
-ERROR in src/hooks/useAudio.ts:131:25
|
|
|
-TS2554: Expected 2 arguments, but got 1.
|
|
|
- 129 |
|
|
|
- 130 | // 停止录音
|
|
|
- > 131 | const stopRecording = useCallback(async (): Promise<Blob | null> => {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 132 | console.log('[useAudio] stopRecording 开始执行,当前状态:', {isRecording, hasRecorder: !!recorderRef.current});
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 133 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 134 | if (!recorderRef.current) {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 135 | console.warn('[useAudio] 尝试停止录音但录音器未初始化');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 136 | return null;
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 137 | }
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 138 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 139 | // 检查录音器的实际状态,而不仅仅依赖Redux状态
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 140 | if (!recorderRef.current.isCurrentlyRecording()) {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 141 | console.warn('[useAudio] 尝试停止录音但录音器当前没有在录音');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 142 | return null;
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 143 | }
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 144 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 145 | try {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 146 | console.log('[useAudio] 准备停止录音器...');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 147 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 148 | // 停止计时
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 149 | if (recordingTimerRef.current) {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 150 | clearInterval(recordingTimerRef.current);
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 151 | recordingTimerRef.current = null;
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 152 | console.log('[useAudio] 录音计时器已停止');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 153 | }
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 154 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 155 | dispatch(setRecordingStatus('processing'));
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 156 | console.log('[useAudio] 调用录音器的stopRecording方法...');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 157 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 158 | try {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 159 | const audioBlob = await recorderRef.current.stopRecording();
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 160 | console.log('[useAudio] 录音器stopRecording返回结果:', audioBlob ? `Blob(${audioBlob.size} bytes)` : 'null');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 161 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 162 | dispatch(resetRecording());
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 163 | console.log('[useAudio] stopRecording 执行完成,返回音频数据');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 164 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 165 | return audioBlob;
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 166 | } catch (stopError) {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 167 | console.error('[useAudio] 正常停止录音失败,尝试强制停止:', stopError);
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 168 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 169 | // 备用方案:强制停止录音器
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 170 | try {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 171 | recorderRef.current.forceStop();
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 172 | console.log('[useAudio] 强制停止成功');
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 173 | } catch (forceError) {
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 174 | console.error('[useAudio] 强制停止也失败:', forceError);
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 175 | }
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 176 |
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 177 | dispatch(resetRecording());
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 178 | return null;
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 179 | }
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- > 180 | }, [isRecording, dispatch]);
|
|
|
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
- 181 |
|
|
|
- 182 | // 取消录音
|
|
|
- 183 | const cancelRecording = useCallback(() => {
|
|
|
-
|
|
|
-ERROR in src/hooks/useAudio.ts:180:4
|
|
|
-TS1472: 'catch' or 'finally' expected.
|
|
|
- 178 | return null;
|
|
|
- 179 | }
|
|
|
- > 180 | }, [isRecording, dispatch]);
|
|
|
- | ^
|
|
|
- 181 |
|
|
|
- 182 | // 取消录音
|
|
|
- 183 | const cancelRecording = useCallback(() => {
|
|
|
-
|
|
|
-ERROR in src/hooks/useAudio.ts:180:29
|
|
|
-TS1005: ';' expected.
|
|
|
- 178 | return null;
|
|
|
- 179 | }
|
|
|
- > 180 | }, [isRecording, dispatch]);
|
|
|
- | ^
|
|
|
- 181 |
|
|
|
- 182 | // 取消录音
|
|
|
- 183 | const cancelRecording = useCallback(() => {
|
|
|
-
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 203:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 263:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 203:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 263:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 203:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 263:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 203:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 263:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-ERROR in src/components/RecordingPlayback.tsx:51:20
|
|
|
-TS2304: Cannot find name 'useMemo'.
|
|
|
- 49 |
|
|
|
- 50 | // 创建和管理音频URL
|
|
|
- > 51 | const audioUrl = useMemo(() => {
|
|
|
- | ^^^^^^^
|
|
|
- 52 | // 清理之前的URL
|
|
|
- 53 | if (audioUrlRef.current) {
|
|
|
- 54 | URL.revokeObjectURL(audioUrlRef.current);
|
|
|
-
|
|
|
Compiling...
|
|
|
Compiled with warnings.
|
|
|
|
|
|
[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 203:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 263:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
+src/components/RecordingPlayback.tsx
|
|
|
+ Line 1:46: 'useMemo' is defined but never used @typescript-eslint/no-unused-vars
|
|
|
|
|
|
Search for the keywords to learn more about each warning.
|
|
|
To ignore, add // eslint-disable-next-line to the line before.
|
|
|
|
|
|
WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 203:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 263:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-Files successfully emitted, waiting for typecheck results...
|
|
|
-Issues checking in progress...
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 203:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 263:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-src/store/slices/audioSlice.ts
|
|
|
- Line 5:10: 'getSupportedMimeType' is defined but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 203:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 263:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-src/store/slices/audioSlice.ts
|
|
|
- Line 5:10: 'getSupportedMimeType' is defined but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-Compiling...
|
|
|
-Files successfully emitted, waiting for typecheck results...
|
|
|
-Issues checking in progress...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 203:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 263:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-src/store/slices/audioSlice.ts
|
|
|
- Line 5:10: 'getSupportedMimeType' is defined but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 203:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 263:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-src/store/slices/audioSlice.ts
|
|
|
- Line 5:10: 'getSupportedMimeType' is defined but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-Files successfully emitted, waiting for typecheck results...
|
|
|
-Issues checking in progress...
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 203:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 263:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 203:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 263:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-webpack compiled with 1 warning
|
|
|
-No issues found.
|
|
|
-Compiling...
|
|
|
-Compiled with warnings.
|
|
|
-
|
|
|
-[eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 203:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 263:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
-
|
|
|
-Search for the keywords to learn more about each warning.
|
|
|
-To ignore, add // eslint-disable-next-line to the line before.
|
|
|
-
|
|
|
-WARNING in [eslint]
|
|
|
-src/components/VoiceRecorder.tsx
|
|
|
- Line 345:9: 'handleClick' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
- Line 376:9: 'handleTouchStart' is assigned a value but never used @typescript-eslint/no-unused-vars
|
|
|
-
|
|
|
-src/hooks/useAudio.ts
|
|
|
- Line 128:6: React Hook useCallback has a missing dependency: 'stopRecording'. Either include it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 203:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
- Line 263:6: React Hook useCallback has an unnecessary dependency: 'isRecording'. Either exclude it or remove the dependency array react-hooks/exhaustive-deps
|
|
|
+src/components/RecordingPlayback.tsx
|
|
|
+ Line 1:46: 'useMemo' is defined but never used @typescript-eslint/no-unused-vars
|
|
|
|
|
|
webpack compiled with 1 warning
|
|
|
No issues found.
|