Comments (6)
You can't use default
as a class name, it is a limitation, because we have default
export in ECMA modules, we need to document it
from css-loader.
Fix - #1590, I improved logic and now we rename default
class to _default
automatically to avoid crash, also updated docs
from css-loader.
Anyway I added test case with:
{
test: /\.module\.css$/,
use: [
'style-loader',
{
loader: 'css-loader',
options: {
modules: {
exportLocalsConvention: 'as-is',
namedExport: false,
},
},
},
],
}
And can't reproduce the problem, maybe you forget to apply these options in another place
Anyway feel free to feedback (or provide reproducible test repo)
from css-loader.
@alexander-akait Thanks for making that change. Can you help me understand why this change was made in v7? Since a CSS Modules file is returned as an object I don't understand how a class called default
would ever conflict with any ES keywords. It worked just fine in v6.
I would understand if the class name was something like .isPrototypeOf
or .constructor
, but .default
isn't one of the reserved keywords for JS objects:
from css-loader.
You should not have problems with namedExport: false,
, I added test and all everything fine, maybe you have more loaders/plugins, can you create minimum reproducible test repo?
from css-loader.
Ah, you're right. My bad. I saw the docs still said .default
gets remapped to _default
, but it's not the case with namedExport: false
.
from css-loader.
Related Issues (20)
- Error when importing not from main entry HOT 1
- Support `composes: body-copy, text-ellipsis from global;`
- Pass resourceQuery to modules.auto callback HOT 2
- Remove `webpack` from `peerDependencies` HOT 7
- Pure selector mistaken as not pure HOT 2
- I have some programming logic in my css file. HOT 1
- The @scope rule does not generate class name in CSS Modules HOT 6
- The documentation should be supplemented with how old projects work properly under 7.0.0 HOT 1
- loaderContext.utils is "undefined", Causes a report that the "contextify" attribute cannot be read from "undefined". HOT 1
- Option to output raw css instead of ESM module, then process output using asset/resource HOT 1
- Need Help Minimizing CSS within JavaScript Chunk HOT 3
- styles don't get applied with v7 HOT 2
- Wrong order of imports causing broken CSS file HOT 2
- css-loader version 7.0.0 or higher doesn't allow to import scss-module styles into React components
- "import styles from" syntax does not work in v7.1.1 HOT 1
- Importing CSS modules works only if the as syntax is used. HOT 2
- Output unique class names for duplicated classes across multiple chunks HOT 3
- Maybe add TypeScript Declaration update to migration guide? HOT 1
- the behavior of css-loader is different in version @6 and version @7 with css modules HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from css-loader.