Prevent 'undefined' from being appended to API resource URL when using custom Axios instance #45
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem
When using a custom
axios
instance it's possible for the final resource URL to include an unwantedundefined
string literal, like so:Unwanted result:
http://localhost:8080/undefined/v1/user
Desired result:
http://localhost:8080/v1/user
This only happens when using a custom
axios
instance because, in this case, the user typically avoids setting the corebaseURL
property and instead only sets the property inaxios
. Ideally users should only set one or the other.Solution
This proposed change corrects the problem by introducing the
normalizedBaseURL
getter.This method explicitly checks for and utilizes the
baseURL
value defined inaxios
.