fix(css): always use css module content #8936
Merged
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.
Description
Unfortunately I failed to implement what I said at #8900 and ended up reverting #7591 (review). 😞
This will cause the following code not to be tree-shaked.
But because this code usually does not happen, I think it is not so bad.
Also this PR does not fix #8245 (comment).
For better or worse, this PR could be backported to v2 since this is a simple partial revert of #7591. I'll create it later if we are going this way.
fixes #8245
fixes #8461
refs #8874, #8896
Additional context
The fix I said at #8900 is to resolve id before injecting
?used
.But this faced to some issues:
normalize.css
will benormalize.css?used
.#alias
will be#alias?used
.#alias
might be perfect matching like/^#alias$/
. Replacing to#alias?used
makes it not to be resolved.We could use
${resolvedId}?used
(/path/to/node_modules/normalize.css/normalize.css
) instead. But if there is aexports
field andnormalize.css
is not included, it will fail to resolve.What is the purpose of this pull request?
Before submitting the PR, please make sure you do the following
fixes #123
).