feat: support next.js out-of-the-box #3701
Closed
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.
Next.js is angry at styled components, and does not allow them. There are workarounds, but generally they still require users to put the styled components inside
"use client"
components.A dear friend of ours, however, recommended a solution like this:
In their project, that worked well.
We experimented further with this, and found that this works just as well:
Further experimentation found that we could also just do:
Which let us just import EDS components from this file instead of directly from
@equinor/eds-core-react
.My theory here is that this PR will make the whole package work in all next projects, without any degradation to other react project support. After all, the
"use client"
string at the top of the file is just a string (to all other js libraries than next/remix).Also, I could add an issue that the docs should add some documentation about how to use the library with next.js, as there might be more next.js projects upcoming.