Skip to content

Commit

Permalink
fix(css): always use css module content (#8936)
Browse files Browse the repository at this point in the history
  • Loading branch information
sapphi-red committed Jul 6, 2022
1 parent 339d9e3 commit 6e0dd3a
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 6 deletions.
6 changes: 5 additions & 1 deletion packages/vite/src/node/plugins/css.ts
Expand Up @@ -426,7 +426,11 @@ export function cssPostPlugin(config: ResolvedConfig): Plugin {
code = `export default ${JSON.stringify(content)}`
}
} else {
code = `export default ''`
// if moduleCode exists return it **even if** it does not have `?used`
// this will disable tree-shake to work with `import './foo.module.css'` but this usually does not happen
// this is a limitation of the current approach by `?used` to make tree-shake work
// See #8936 for more details
code = modulesCode || `export default ''`
}

return {
Expand Down
9 changes: 4 additions & 5 deletions playground/css/__tests__/css.spec.ts
Expand Up @@ -349,8 +349,7 @@ test('PostCSS dir-dependency', async () => {
}
})

// skip because #8278 is reverted
test.skip('import dependency includes css import', async () => {
test('import dependency includes css import', async () => {
expect(await getColor('.css-js-dep')).toBe('green')
expect(await getColor('.css-js-dep-module')).toBe('green')
})
Expand Down Expand Up @@ -437,9 +436,9 @@ test('PostCSS source.input.from includes query', async () => {
)
})

// skip because #8278 is reverted
test.skip('aliased css has content', async () => {
test('aliased css has content', async () => {
expect(await getColor('.aliased')).toBe('blue')
expect(await page.textContent('.aliased-content')).toMatch('.aliased')
// skipped: currently not supported see #8936
// expect(await page.textContent('.aliased-content')).toMatch('.aliased')
expect(await getColor('.aliased-module')).toBe('blue')
})

0 comments on commit 6e0dd3a

Please sign in to comment.