Resume Matcher is an open source, free tool to improve your resume. It works by using language models to compare and rank resumes with job descriptions.
Occasionally (not all the time), whenever I start up the local frontend full stack Next.js webapp, and then attempt to load the frontend UI after the Next.js servers are up and ready, the browser displays an exception thrown by Next.js.
The exception which is occasionally thrown, throws with the error message Attempted to call getErrorMessage() from the server, but getErrorMessage is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a client component..
💡 It seems that the error.ts file from which the getErrorMessage() function is defined conflicts with the reserved Next.js app router keyword for error.tsx components, and so Next.js (mistakenly) assumes error.ts is client component file, and hence why use client was placed at the top of the error.ts file in the first place to overcome the initial error. However, in hindsight this is not the correct solution as the function should be called on the server-side, and so the solution is to instead rename error.ts to errors.ts, which also makes more logical sense, and can be extended with additional error handling functions in future.
This change resolves issue #207.
Related Issue
207
Description
Renamed error.ts to errors.ts to avoid Next.js reserved keyword conflict for Error.tsx boundary client component files.
Re-reference imports to the new errors.ts file
Removed "use client"; declaration in renamed errors.ts file, to correctly allow the functions defined within to be called on the server.
Type
[X] Bug Fix
[ ] Feature Enhancement
[ ] Documentation Update
[ ] Code Refactoring
[ ] Other (please specify):
Proposed Changes
error.ts
errors.ts
third-party-services.tsx
useGlobalStore.ts
Screenshots / Code Snippets (if applicable)
Exception message rendered on the frontend UI of the full stack Next.js web app.
A separate and different exception message thrown by Next.js before further refactoring to remove "use client"; declaration on the previously incorrectly named error.ts file.
How to Test
Please follow steps outlined in issue #207
Checklist
[X] The code compiles successfully without any errors or warnings
[X] The changes have been tested and verified
[ ] The documentation has been updated (if applicable)
[X] The changes follow the project's coding guidelines and best practices
[X] The commit messages are descriptive and follow the project's guidelines
[ ] All tests (if applicable) pass successfully
[X] This pull request has been linked to the related issue (if applicable)
fix: Next.js UI throws exception on
error.ts
fileOccasionally (not all the time), whenever I start up the local frontend full stack Next.js webapp, and then attempt to load the frontend UI after the Next.js servers are up and ready, the browser displays an exception thrown by Next.js.
The exception which is occasionally thrown, throws with the error message
Attempted to call getErrorMessage() from the server, but getErrorMessage is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a client component.
.💡 It seems that the
error.ts
file from which thegetErrorMessage()
function is defined conflicts with the reserved Next.js app router keyword forerror.tsx
components, and so Next.js (mistakenly) assumeserror.ts
is client component file, and hence whyuse client
was placed at the top of theerror.ts
file in the first place to overcome the initial error. However, in hindsight this is not the correct solution as the function should be called on the server-side, and so the solution is to instead renameerror.ts
toerrors.ts
, which also makes more logical sense, and can be extended with additional error handling functions in future.This change resolves issue #207.
Related Issue
207
Description
error.ts
toerrors.ts
to avoid Next.js reserved keyword conflict forError.tsx
boundary client component files.errors.ts
file"use client";
declaration in renamederrors.ts
file, to correctly allow the functions defined within to be called on the server.Type
Proposed Changes
error.ts
errors.ts
third-party-services.tsx
useGlobalStore.ts
Screenshots / Code Snippets (if applicable)
Exception message rendered on the frontend UI of the full stack Next.js web app.
A separate and different exception message thrown by Next.js before further refactoring to remove
"use client";
declaration on the previously incorrectly namederror.ts
file.How to Test
Please follow steps outlined in issue #207
Checklist
Additional Information
N/A