Tiêu đề ## Tôi sử dụng Phiên bản phản ứng phiên bản 3.4.3 [phiên bản mới nhất]. Bạn chỉ cần làm theo các bước đã cho dưới đây.
Chạy lệnh: NPM Run Eject
Sau đó, bạn sẽ nhận được một tệp cấu hình, trong webpack.config.js mở đó
Và kiểm tra tìm kiếm: CSSREGEX hoặc chỉ tìm kiếm CSSREGEX Bây giờ bạn sẽ thấy một cái gì đó như thế này:
Kiểm tra: Cssregex,
exclude: cssModuleRegex,
use: getStyleLoaders[{
importLoaders: 1,
sourceMap: isEnvProduction && shouldUseSourceMap,
}],
Bây giờ sau khi Nhập tải: 1, thêm các mô -đun: Đúng và chỉ lưu tệp.
Bây giờ bạn có thể khởi động lại máy chủ bằng NPM Start và bạn sẽ thấy các kiểu của mình được áp dụng.
Mở tệp .js và statement nhập như thế này
import cssStyleClassName from './MyAppStyle.css';
Xin đừng quên thêm tiện ích mở rộng .CSS vào tệp kiểu dáng, tại thời điểm nhập..css extension to the styling file, at the time of import.
Sau đó, câu lệnh nhập này cho phép bạn thực hiện các thay đổi sau trong các thẻ thành phần như thế này
import cssStyleClassName from './MyAppStyle.css';
03import cssStyleClassName from './MyAppStyle.css';
04 là những gì bạn đã xác định trong tệp import cssStyleClassName from './MyAppStyle.css';
05 của bạn.styleName{
your properties here...
}
Trong bài viết này, chúng tôi sẽ học cách cung cấp tên lớp động cho ứng dụng React của chúng tôi.
Các bước
Npm run eject
Lệnh này sẽ cho phép chúng tôi tùy chỉnh các cấu hình và các tùy chọn được xác định trước khi chúng tôi chạy lệnh của created-react-app. Đó là một hoạt động một chiều mà có thể được hoàn tác sau này.
Thay đổi cấu hình webpack
Chúng tôi cần định cấu hình trình tải webpack để bật trình tải CSS, sau đó sẽ cung cấp đặt tên động cho các lớp của chúng tôi.
Đặt cấu hình là -
{ test: /\.css$/, loader: 'style-loader' }, { test: /\.css$/, loader: 'css-loader', query: { modules: true, localIdentName: '[name]_[local]__[hash:base64:5]' } }
Nhập các tệp CSS một cách linh hoạt
import styles from './App.css'
Thí dụ
Trong ví dụ này, chúng tôi sẽ xây dựng một ứng dụng React có cách đặt tên động cho các lớp của các phần tử JSX.
App.jsx
import React from 'react'; import styles from './App.css' const App = [] => { return []; }; export default App;TutorialsPoint
Trong ví dụ trên, một tên lớp động được cung cấp cho thẻ.
Đầu ra
Cập nhật vào ngày 18 tháng 3 năm 2021 10:33:47
- Câu hỏi và câu trả lời liên quan
- Xây dựng bộ tải hoạt hình trong React.js
- Làm thế nào để sử dụng Android Loader?
- Sự khác biệt giữa trình liên kết và trình tải
- LocalStorage trong Reactjs
- Regex trong Reactjs
- Sự hồi hộp trong Reactjs
- Tải lười trong ReactJS
- Chế độ nghiêm ngặt trong ReactJS
- Xác nhận URL trong ReactJS
- Kết xuất có điều kiện trong ReactJS
- API bối cảnh trong ReactJS
- Móc tùy chỉnh trong ReactJS
- Xử lý hình thức trong ReactJS
- Tối ưu hóa các ứng dụng ReactJS
- Reactjs - mảnh vỡ
Tuyên bố miễn trừ trách nhiệm: CSS-Loader là gói của bên thứ ba được duy trì bởi các thành viên cộng đồng, nó có khả năng không có cùng hỗ trợ, chính sách bảo mật hoặc giấy phép như webpack và nó không được duy trì bởi webpack. css-loader is a third-party package maintained by community members, it potentially does not have the same support, security policy or license as webpack, and it is not maintained by webpack.
import cssStyleClassName from './MyAppStyle.css';
06 diễn giải import cssStyleClassName from './MyAppStyle.css';
07 và import cssStyleClassName from './MyAppStyle.css';
08 như import cssStyleClassName from './MyAppStyle.css';
09 và sẽ giải quyết chúng.Bắt đầu
Cảnh báo
Để sử dụng CSS-Loader, WebPack@5 là bắt buộc
Để bắt đầu, bạn sẽ cần cài đặt
import cssStyleClassName from './MyAppStyle.css';
06:npm install --save-dev css-loader
hoặc
yarn add -D css-loader
hoặc
pnpm add -D css-loader
Sau đó thêm plugin vào cấu hình
import cssStyleClassName from './MyAppStyle.css';
11 của bạn. Ví dụ:file.js
import cssStyleClassName from './MyAppStyle.css';
0webpack.config.js
import cssStyleClassName from './MyAppStyle.css';
1Và chạy
import cssStyleClassName from './MyAppStyle.css';
11 thông qua phương pháp ưa thích của bạn.Nếu, vì lý do này hay lý do khác, bạn cần trích xuất CSS dưới dạng tệp [tức là không lưu trữ CSS trong mô -đun JS], bạn có thể muốn xem ví dụ đề xuất.
Tùy chọn
13import cssStyleClassName from './MyAppStyle.css';
14import cssStyleClassName from './MyAppStyle.css';
15import cssStyleClassName from './MyAppStyle.css';
16import cssStyleClassName from './MyAppStyle.css';
17import cssStyleClassName from './MyAppStyle.css';
18import cssStyleClassName from './MyAppStyle.css';
19import cssStyleClassName from './MyAppStyle.css';
import cssStyleClassName from './MyAppStyle.css';
13
import cssStyleClassName from './MyAppStyle.css';
Type:
import cssStyleClassName from './MyAppStyle.css';
2Mặc định:
import cssStyleClassName from './MyAppStyle.css';
21Cho phép bật/tắt xử lý các hàm CSS
import cssStyleClassName from './MyAppStyle.css';
13 và import cssStyleClassName from './MyAppStyle.css';
23. Nếu được đặt thành import cssStyleClassName from './MyAppStyle.css';
24, import cssStyleClassName from './MyAppStyle.css';
06 sẽ không phân tích bất kỳ đường dẫn nào được chỉ định trong import cssStyleClassName from './MyAppStyle.css';
13 hoặc import cssStyleClassName from './MyAppStyle.css';
23. Một chức năng cũng có thể được thông qua để kiểm soát hành vi này một cách linh hoạt dựa trên đường dẫn đến tài sản. Bắt đầu với phiên bản 4.0.0, các đường dẫn tuyệt đối được phân tích cú pháp dựa trên gốc máy chủ.Ví dụ giải quyết:
import cssStyleClassName from './MyAppStyle.css';
3Để nhập tài sản từ đường dẫn
import cssStyleClassName from './MyAppStyle.css';
28 [bao gồm import cssStyleClassName from './MyAppStyle.css';
29] và cho import cssStyleClassName from './MyAppStyle.css';
30, tiền tố nó với import cssStyleClassName from './MyAppStyle.css';
31:import cssStyleClassName from './MyAppStyle.css';
4import cssStyleClassName from './MyAppStyle.css';
32
import cssStyleClassName from './MyAppStyle.css';
Bật/tắt
import cssStyleClassName from './MyAppStyle.css';
08 Giải quyết.webpack.config.js
import cssStyleClassName from './MyAppStyle.css';
5import cssStyleClassName from './MyAppStyle.css';
34
import cssStyleClassName from './MyAppStyle.css';
Cho phép lọc
import cssStyleClassName from './MyAppStyle.css';
08. Tất cả được lọc import cssStyleClassName from './MyAppStyle.css';
08 sẽ không được giải quyết [để lại trong mã như chúng đã được viết].webpack.config.js
import cssStyleClassName from './MyAppStyle.css';
6import cssStyleClassName from './MyAppStyle.css';
14
import cssStyleClassName from './MyAppStyle.css';
Type:
import cssStyleClassName from './MyAppStyle.css';
7Mặc định:
import cssStyleClassName from './MyAppStyle.css';
21Cho phép bật/tắt xử lý các hàm CSS
import cssStyleClassName from './MyAppStyle.css';
13 và import cssStyleClassName from './MyAppStyle.css';
23. Nếu được đặt thành import cssStyleClassName from './MyAppStyle.css';
24, import cssStyleClassName from './MyAppStyle.css';
06 sẽ không phân tích bất kỳ đường dẫn nào được chỉ định trong import cssStyleClassName from './MyAppStyle.css';
13 hoặc import cssStyleClassName from './MyAppStyle.css';
23. Một chức năng cũng có thể được thông qua để kiểm soát hành vi này một cách linh hoạt dựa trên đường dẫn đến tài sản. Bắt đầu với phiên bản 4.0.0, các đường dẫn tuyệt đối được phân tích cú pháp dựa trên gốc máy chủ.Ví dụ giải quyết:
import cssStyleClassName from './MyAppStyle.css';
8Để nhập tài sản từ đường dẫn
import cssStyleClassName from './MyAppStyle.css';
28 [bao gồm import cssStyleClassName from './MyAppStyle.css';
29] và cho import cssStyleClassName from './MyAppStyle.css';
30, tiền tố nó với import cssStyleClassName from './MyAppStyle.css';
31:import cssStyleClassName from './MyAppStyle.css';
9import cssStyleClassName from './MyAppStyle.css';
32
import cssStyleClassName from './MyAppStyle.css';
Bật/tắt
import cssStyleClassName from './MyAppStyle.css';
08 Giải quyết.webpack.config.js
.styleName{
your properties here...
}
0import cssStyleClassName from './MyAppStyle.css';
34
import cssStyleClassName from './MyAppStyle.css';
import cssStyleClassName from './MyAppStyle.css';
49Type:
.styleName{
your properties here...
}
1Cho phép lọc
import cssStyleClassName from './MyAppStyle.css';
08. Tất cả được lọc import cssStyleClassName from './MyAppStyle.css';
08 sẽ không được giải quyết [để lại trong mã như chúng đã được viết].import cssStyleClassName from './MyAppStyle.css';
6webpack.config.js
.styleName{
your properties here...
}
2import cssStyleClassName from './MyAppStyle.css';
15
import cssStyleClassName from './MyAppStyle.css';
Type:
.styleName{
your properties here...
}
3Cho phép lọc
import cssStyleClassName from './MyAppStyle.css';
08. Tất cả được lọc import cssStyleClassName from './MyAppStyle.css';
08 sẽ không được giải quyết [để lại trong mã như chúng đã được viết].import cssStyleClassName from './MyAppStyle.css';
6- Cho phép cho phép/vô hiệu hóa
07 Xử lý các quy tắc. Kiểm soátimport cssStyleClassName from './MyAppStyle.css';
07 Giải quyết. URL tuyệt đối trongimport cssStyleClassName from './MyAppStyle.css';
07 sẽ được di chuyển trong mã thời gian chạy.import cssStyleClassName from './MyAppStyle.css';
- Để nhập các kiểu từ đường dẫn
28 [bao gồmimport cssStyleClassName from './MyAppStyle.css';
29] và choimport cssStyleClassName from './MyAppStyle.css';
30, tiền tố nó vớiimport cssStyleClassName from './MyAppStyle.css';
31:import cssStyleClassName from './MyAppStyle.css';
- Bật/tắt
07 Giải quyết.import cssStyleClassName from './MyAppStyle.css';
- Mặc định:
50import cssStyleClassName from './MyAppStyle.css';
- Cho phép lọc
07. Tất cả được lọcimport cssStyleClassName from './MyAppStyle.css';
07 sẽ không được giải quyết [để lại trong mã như chúng đã được viết].import cssStyleClassName from './MyAppStyle.css';
Cho phép bật/tắt các mô -đun CSS hoặc ICSS và Cấu hình thiết lập:CSS Modules specification and setup basic behaviour.
import cssStyleClassName from './MyAppStyle.css';
50 - Kích hoạt các mô -đun CSS cho tất cả các tệp khớp với import cssStyleClassName from './MyAppStyle.css';
56 và import cssStyleClassName from './MyAppStyle.css';
57 RegEXP.CSS Modules features, it will be useful for
developers who use vanilla css or use other technologies.webpack.config.js
.styleName{
your properties here...
}
4import cssStyleClassName from './MyAppStyle.css';
67
import cssStyleClassName from './MyAppStyle.css';
import cssStyleClassName from './MyAppStyle.css';
68import cssStyleClassName from './MyAppStyle.css';
21 - Kích hoạt các mô -đun CSS cho tất cả các tệp.import cssStyleClassName from './MyAppStyle.css';
24 - Vô hiệu hóa các mô -đun CSS cho tất cả các tệp.import cssStyleClassName from './MyAppStyle.css';
60 - Vô hiệu hóa các mô -đun CSS cho tất cả các tệp và đặt tùy chọn import cssStyleClassName from './MyAppStyle.css';
61, thêm thông tin bạn có thể đọc ở đâyimport cssStyleClassName from './MyAppStyle.css';
34 - Kích hoạt các mô -đun CSS cho tất cả các tệp, nếu tùy chọn import cssStyleClassName from './MyAppStyle.css';
63 không được chỉ định, nếu không, tùy chọn import cssStyleClassName from './MyAppStyle.css';
63 sẽ xác định xem liệu đó có phải là mô -đun CSS hay không, có thêm thông tin bạn có thể đọc ở đâyTùy chọn
import cssStyleClassName from './MyAppStyle.css';
15 cho phép/vô hiệu hóa đặc tả mô -đun CSS và thiết lập hành vi cơ bản.Sử dụng hiệu suất tăng giá trị
import cssStyleClassName from './MyAppStyle.css';
24 Vì chúng tôi tránh phân tích các tính năng mô -đun CSS, nó sẽ hữu ích cho các nhà phát triển sử dụng vani CSS hoặc sử dụng các công nghệ khác..styleName{
your properties here...
}
5.styleName{
your properties here...
}
6Sử dụng giá trị
69 yêu cầu bạn chỉ định các lớpimport cssStyleClassName from './MyAppStyle.css';
70. Sử dụng giá trịimport cssStyleClassName from './MyAppStyle.css';
71 yêu cầu bạn chỉ định các lớpimport cssStyleClassName from './MyAppStyle.css';
72. Sử dụng giá trịimport cssStyleClassName from './MyAppStyle.css';
73 Yêu cầu các bộ chọn phải chứa ít nhất một lớp hoặc ID cục bộ.import cssStyleClassName from './MyAppStyle.css';
Bạn có thể tìm thêm thông tin ở đây.
.styleName{
your properties here...
}
7Phong cách có thể được phân chia cục bộ để tránh các phong cách phạm vi toàn cầu.
Bạn có thể sử dụng
import cssStyleClassName from './MyAppStyle.css';
79, nhưng điều này không được khuyến khích. Sử dụng các lớp thay vì ID.import cssStyleClassName from './MyAppStyle.css';
80Khi khai báo một tên lớp địa phương, bạn có thể soạn một lớp địa phương từ một lớp học địa phương khác.
.styleName{
your properties here...
}
8Điều này không dẫn đến bất kỳ thay đổi nào đối với chính CSS nhưng xuất nhiều tên lớp.
.styleName{
your properties here...
}
9Npm run eject0
import cssStyleClassName from './MyAppStyle.css';
81Để nhập một tên lớp cục bộ từ một mô -đun khác.
Ghi chú
Chúng tôi thực sự khuyên bạn nên chỉ định tiện ích mở rộng khi nhập tệp, vì có thể nhập một tệp với bất kỳ tiện ích mở rộng nào và nó không được biết trước để sử dụng tệp nào.
Npm run eject1
Npm run eject2
Để nhập từ nhiều mô -đun, sử dụng nhiều quy tắc
import cssStyleClassName from './MyAppStyle.css';
82.Npm run eject3
import cssStyleClassName from './MyAppStyle.css';
83Bạn có thể sử dụng
import cssStyleClassName from './MyAppStyle.css';
84 cho các giá trị cụ thể để được sử dụng lại trong toàn bộ tài liệu.Chúng tôi khuyên bạn nên sử dụng tiền tố
import cssStyleClassName from './MyAppStyle.css';
85 cho các giá trị, import cssStyleClassName from './MyAppStyle.css';
86 cho các bộ chọn và import cssStyleClassName from './MyAppStyle.css';
87 cho phương tiện truyền thông tại các quy tắc.Npm run eject4
import cssStyleClassName from './MyAppStyle.css';
32
import cssStyleClassName from './MyAppStyle.css';
Kích hoạt các tính năng mô -đun CSS.CSS Modules features.
webpack.config.js
.styleName{
your properties here...
}
4import cssStyleClassName from './MyAppStyle.css';
60
import cssStyleClassName from './MyAppStyle.css';
Kích hoạt các tính năng mô -đun CSS và thiết lập
import cssStyleClassName from './MyAppStyle.css';
61.CSS Modules features and setup import cssStyleClassName from './MyAppStyle.css';
61.webpack.config.js
Npm run eject6
import cssStyleClassName from './MyAppStyle.css';
34
import cssStyleClassName from './MyAppStyle.css';
Kích hoạt các tính năng mô -đun CSS và các tùy chọn thiết lập cho chúng.CSS Modules features and setup options for them.
webpack.config.js
Npm run eject7
import cssStyleClassName from './MyAppStyle.css';
92Type:
Npm run eject8
Mặc định:
import cssStyleClassName from './MyAppStyle.css';
50Cho phép tự động kích hoạt các mô -đun CSS/ICSS dựa trên tên tệp khi tùy chọn
import cssStyleClassName from './MyAppStyle.css';
15 là đối tượng.Những giá trị khả thi:
50 - Kích hoạt các mô -đun CSS cho tất cả các tệp.import cssStyleClassName from './MyAppStyle.css';
21 - Kích hoạt các mô -đun CSS cho tất cả các tệp khớp vớiimport cssStyleClassName from './MyAppStyle.css';
56 vàimport cssStyleClassName from './MyAppStyle.css';
57 RegEXP.import cssStyleClassName from './MyAppStyle.css';
24 - Vô hiệu hóa các mô -đun CSS.import cssStyleClassName from './MyAppStyle.css';
00 - Kích hoạt các mô -đun CSS cho tất cả các tệp khớp với regexp..styleName{ your properties here... }
02 - Kích hoạt các mô -đun CSS cho các tệp dựa trên tên tệp thỏa mãn kiểm tra chức năng bộ lọc của bạn..styleName{ your properties here... }
import cssStyleClassName from './MyAppStyle.css';
32Những giá trị khả thi:
50 - Kích hoạt các mô -đun CSS cho tất cả các tệp.import cssStyleClassName from './MyAppStyle.css';
21 - Kích hoạt các mô -đun CSS cho tất cả các tệp khớp vớiimport cssStyleClassName from './MyAppStyle.css';
56 vàimport cssStyleClassName from './MyAppStyle.css';
57 RegEXP.import cssStyleClassName from './MyAppStyle.css';
webpack.config.js
Npm run eject9
.styleName{
your properties here...
}
00.styleName{
your properties here...
}
00import cssStyleClassName from './MyAppStyle.css';
24 - Vô hiệu hóa các mô -đun CSS.webpack.config.js
{ test: /\.css$/, loader: 'style-loader' }, { test: /\.css$/, loader: 'css-loader', query: { modules: true, localIdentName: '[name]_[local]__[hash:base64:5]' } }0
.styleName{
your properties here...
}
02.styleName{
your properties here...
}
02.styleName{
your properties here...
}
00 - Kích hoạt các mô -đun CSS cho tất cả các tệp khớp với regexp.webpack.config.js
{ test: /\.css$/, loader: 'style-loader' }, { test: /\.css$/, loader: 'css-loader', query: { modules: true, localIdentName: '[name]_[local]__[hash:base64:5]' } }1
import cssStyleClassName from './MyAppStyle.css';
61Type:
{ test: /\.css$/, loader: 'style-loader' }, { test: /\.css$/, loader: 'css-loader', query: { modules: true, localIdentName: '[name]_[local]__[hash:base64:5]' } }2
.styleName{
your properties here...
}
02 - Kích hoạt các mô -đun CSS cho các tệp dựa trên tên tệp thỏa mãn kiểm tra chức năng bộ lọc của bạn.import cssStyleClassName from './MyAppStyle.css';
21 - Cho phép các mô -đun CSS hoặc định dạng CSS có thể tương tác, đặt tùy chọn .styleName{
your properties here...
}
05 thành giá trị import cssStyleClassName from './MyAppStyle.css';
69 cho tất cả các tệp đáp ứng điều kiện .styleName{
your properties here...
}
07 hoặc đặt tùy chọn .styleName{
your properties here...
}
05 thành giá trị .styleName{
your properties here...
}
09 cho tất cả các tệp đáp ứng điều kiện import cssStyleClassName from './MyAppStyle.css';
57import cssStyleClassName from './MyAppStyle.css';
24 - Vô hiệu hóa các mô -đun CSS hoặc định dạng CSS có thể tương tác dựa trên tên tệpBật các mô -đun CSS cho các tệp dựa trên tên tệp thỏa mãn kiểm tra regex của bạn.
Bật các mô -đun CSS cho các tệp dựa trên tên tệp thỏa mãn kiểm tra chức năng bộ lọc của bạn.
import cssStyleClassName from './MyAppStyle.css';
60Mặc định:
.styleName{
your properties here...
}
15webpack.config.js
{ test: /\.css$/, loader: 'style-loader' }, { test: /\.css$/, loader: 'css-loader', query: { modules: true, localIdentName: '[name]_[local]__[hash:base64:5]' } }3
.styleName{
your properties here...
}
02.styleName{
your properties here...
}
02Tùy chọn thiết lập
import cssStyleClassName from './MyAppStyle.css';
61. Bạn có thể bỏ qua giá trị khi bạn muốn chế độ import cssStyleClassName from './MyAppStyle.css';
69.Kiểm soát mức độ tổng hợp được áp dụng cho các kiểu đầu vào.
webpack.config.js
{ test: /\.css$/, loader: 'style-loader' }, { test: /\.css$/, loader: 'css-loader', query: { modules: true, localIdentName: '[name]_[local]__[hash:base64:5]' } }4
.styleName{
your properties here...
}
39Type:
import cssStyleClassName from './MyAppStyle.css';
69, import cssStyleClassName from './MyAppStyle.css';
71 và import cssStyleClassName from './MyAppStyle.css';
73 Xử lý các giá trị phạm vi .styleName{
your properties here...
}
21 và .styleName{
your properties here...
}
22 và import cssStyleClassName from './MyAppStyle.css';
84. .styleName{
your properties here...
}
09 sẽ chỉ biên dịch định dạng .styleName{
your properties here...
}
25 cấp thấp để khai báo các phụ thuộc .styleName{
your properties here...
}
26 và .styleName{
your properties here...
}
27 giữa CSS và các ngôn ngữ khác.ICSS củng cố hỗ trợ mô-đun CSS và cung cấp cú pháp cấp thấp cho các công cụ khác để thực hiện các biến thể mô-đun CSS của riêng chúng.
Các giá trị có thể -
import cssStyleClassName from './MyAppStyle.css';
69, import cssStyleClassName from './MyAppStyle.css';
71, import cssStyleClassName from './MyAppStyle.css';
73 và .styleName{
your properties here...
}
09.Cho phép đặt các giá trị khác nhau cho tùy chọn
import cssStyleClassName from './MyAppStyle.css';
61 dựa trên tên tệp- Giá trị trả về có thể -
69,import cssStyleClassName from './MyAppStyle.css';
71,import cssStyleClassName from './MyAppStyle.css';
73 vàimport cssStyleClassName from './MyAppStyle.css';
09..styleName{ your properties here... }
- output.hashDigest,
- output.hashDigestLength,
- output.hashFunction,
- output.hashSalt.
{ test: /\.css$/, loader: 'style-loader' }, { test: /\.css$/, loader: 'css-loader', query: { modules: true, localIdentName: '[name]_[local]__[hash:base64:5]' } }5
- Mặc định:
40.styleName{ your properties here... }
- Cho phép định cấu hình tên nhận dạng cục bộ được tạo.
- Để biết thêm thông tin về các tùy chọn, xem:
- Chuỗi mẫu trang web,
- Chuỗi mẫu được hỗ trợ:
41 Tên cơ sở của tài nguyên.styleName{ your properties here... }
42 Thư mục Tài nguyên liên quan đến tùy chọn.styleName{ your properties here... }
43 hoặc tùy chọn.styleName{ your properties here... }
44..styleName{ your properties here... }
45 Đường dẫn của tài nguyên so với tùy chọn.styleName{ your properties here... }
43 hoặc tùy chọn.styleName{ your properties here... }
44..styleName{ your properties here... }
Recommendations:
48 - Tên tệp và đường dẫn..styleName{ your properties here... }
49 - Mở rộng với hàng đầu.styleName{ your properties here... }
50..styleName{ your properties here... }
.styleName{
your properties here...
}
51 - băm của chuỗi, được tạo dựa trên .styleName{
your properties here...
}
52, .styleName{
your properties here...
}
53, .styleName{
your properties here...
}
54, .styleName{
your properties here...
}
55, .styleName{
your properties here...
}
56, .styleName{
your properties here...
}
57 và .styleName{
your properties here...
}
58
59 - băm có cài đặt băm. all reserved [.styleName{
your properties here...
}
.styleName{
your properties here...
}
64] and control filesystem characters [excluding characters in the .styleName{
your properties here...
}
60 placeholder] will be converted to .styleName{
your properties here...
}
66.webpack.config.js
{ test: /\.css$/, loader: 'style-loader' }, { test: /\.css$/, loader: 'css-loader', query: { modules: true, localIdentName: '[name]_[local]__[hash:base64:5]' } }6
.styleName{
your properties here...
}
56Type:
{ test: /\.css$/, loader: 'style-loader' }, { test: /\.css$/, loader: 'css-loader', query: { modules: true, localIdentName: '[name]_[local]__[hash:base64:5]' } }7
.styleName{
your properties here...
}
60 - Lớp gốc.Sử dụng
.styleName{
your properties here...
}
61 để phát triểnwebpack.config.js
{ test: /\.css$/, loader: 'style-loader' }, { test: /\.css$/, loader: 'css-loader', query: { modules: true, localIdentName: '[name]_[local]__[hash:base64:5]' } }8
.styleName{
your properties here...
}
52Type:
{ test: /\.css$/, loader: 'style-loader' }, { test: /\.css$/, loader: 'css-loader', query: { modules: true, localIdentName: '[name]_[local]__[hash:base64:5]' } }9
Mặc định:
import cssStyleClassName from './MyAppStyle.css';
50Cho phép tự động kích hoạt các mô -đun CSS/ICSS dựa trên tên tệp khi tùy chọn
import cssStyleClassName from './MyAppStyle.css';
15 là đối tượng.webpack.config.js
import styles from './App.css'0
.styleName{
your properties here...
}
53Type:
import styles from './App.css'1
Mặc định:
.styleName{
your properties here...
}
72Cho phép chỉ định hàm băm để tạo các lớp. Để biết thêm thông tin, xem đầu ra.hashfunction.
webpack.config.js
import styles from './App.css'2
.styleName{
your properties here...
}
54Type:
import styles from './App.css'3
Mặc định:
.styleName{
your properties here...
}
74Cho phép chỉ định tiêu hóa băm để tạo các lớp. Để biết thêm thông tin, xem đầu ra.hashdigest.
webpack.config.js
import styles from './App.css'4
.styleName{
your properties here...
}
55Type:
import styles from './App.css'5
Mặc định:
.styleName{
your properties here...
}
76Cho phép chỉ định độ dài tiêu hóa băm để tạo các lớp. Để biết thêm thông tin, xem đầu ra.hashdigestlength.
webpack.config.js
import styles from './App.css'6
.styleName{
your properties here...
}
77Loại:
.styleName{
your properties here...
}
78 Mặc định: .styleName{
your properties here...
}
79Nên sử dụng tên địa phương khi tính toán băm.
79 Cả đường dẫn tài nguyên và tên cục bộ đều được sử dụng khi băm. Mỗi định danh trong một mô -đun có được tiêu hóa băm riêng của nó, luôn luôn..styleName{ your properties here... }
81 Phát hiện tự động nếu tên định danh có thể được bỏ qua từ băm. Sử dụng giá trị này để tối ưu hóa đầu ra để nén GZIP hoặc Brotli tốt hơn..styleName{ your properties here... }
webpack.config.js
import styles from './App.css'7
.styleName{
your properties here...
}
82Type:
import styles from './App.css'8
Mặc định:
import cssStyleClassName from './MyAppStyle.css';
50webpack.config.js
import styles from './App.css'9
.styleName{
your properties here...
}
84Type:
import React from 'react'; import styles from './App.css' const App = [] => { return [0]; }; export default App;TutorialsPoint
Mặc định:
import cssStyleClassName from './MyAppStyle.css';
50Cho phép chỉ định một hàm để tạo tên lớp. Theo mặc định, chúng tôi sử dụng chức năng tích hợp để tạo một tên lớp. Nếu hàm tùy chỉnh trả về
.styleName{
your properties here...
}
86 hoặc import cssStyleClassName from './MyAppStyle.css';
50, chúng tôi sẽ dự phòng chức năng tích hợp để tạo tên lớp.webpack.config.js
import React from 'react'; import styles from './App.css' const App = [] => { return [1]; }; export default App;TutorialsPoint
.styleName{
your properties here...
}
88Type:
import React from 'react'; import styles from './App.css' const App = [] => { return [2]; }; export default App;TutorialsPoint
Mặc định:
import cssStyleClassName from './MyAppStyle.css';
24Cho phép/vô hiệu hóa các mô -đun ES có tên xuất khẩu cho người dân địa phương.
Cảnh báo
Tên của người dân địa phương được chuyển đổi thành Camelcase, tức là tùy chọn
90 có giá trị.styleName{ your properties here... }
91 theo mặc định..styleName{ your properties here... }
Cảnh báo
Tên của người dân địa phương được chuyển đổi thành Camelcase, tức là tùy chọn
90 có giá trị.styleName{ your properties here... }
91 theo mặc định..styleName{ your properties here... }
styles.css
import React from 'react'; import styles from './App.css' const App = [] => { return [3]; }; export default App;TutorialsPoint
index.js
import React from 'react'; import styles from './App.css' const App = [] => { return [4]; }; export default App;TutorialsPoint
Nó không được phép sử dụng các từ dành riêng của JavaScript trong tên lớp CSS.
webpack.config.js
import React from 'react'; import styles from './App.css' const App = [] => { return [5]; }; export default App;TutorialsPoint
Bạn có thể bật mô -đun ES có tên xuất khẩu bằng cách sử dụng:
.styleName{
your properties here...
}
94Type:
import React from 'react'; import styles from './App.css' const App = [] => { return [6]; }; export default App;TutorialsPoint
Mặc định:
import cssStyleClassName from './MyAppStyle.css';
24Cho phép/vô hiệu hóa các mô -đun ES có tên xuất khẩu cho người dân địa phương.
webpack.config.js
import React from 'react'; import styles from './App.css' const App = [] => { return [7]; }; export default App;TutorialsPoint
.styleName{
your properties here...
}
90Type:
import React from 'react'; import styles from './App.css' const App = [] => { return [8]; }; export default App;TutorialsPoint
Cảnh báo
Tên của người dân địa phương được chuyển đổi thành Camelcase, tức là tùy chọn
.styleName{
your properties here...
}
90 có giá trị .styleName{
your properties here...
}
91 theo mặc định.import cssStyleClassName from './MyAppStyle.css';
60Nó không được phép sử dụng các từ dành riêng của JavaScript trong tên lớp CSS.
Cảnh báo
Tên của người dân địa phương được chuyển đổi thành Camelcase, tức là tùy chọn
90 có giá trị.styleName{ your properties here... }
91 theo mặc định..styleName{ your properties here... }
Npm run eject07 | 60
| Cho phép 06 xuất tên từ lớp toàn cầu hoặc ID, vì vậy bạn có thể sử dụng tên địa phương.
|
Npm run eject09 | 60
| Mặc định: Dựa trên giá trị tùy chọn 98, nếu 21 - 91, nếu không Npm run eject01 |
Npm run eject11 | 60
| Phong cách xuất khẩu tên lớp. |
Npm run eject13 | 60
| Theo mặc định, các phím JSON đã xuất phản chiếu các tên lớp [tức là giá trị Npm run eject01]. |
Npm run eject15 | 60
| Chỉ giá trị 91 cho phép nếu bạn đặt giá trị 88 thành 21.
|
file.css
import React from 'react'; import styles from './App.css' const App = [] => { return [9]; }; export default App;TutorialsPoint
file.js
npm install --save-dev css-loader
0webpack.config.js
npm install --save-dev css-loader
1.styleName{
your properties here...
}
02.styleName{
your properties here...
}
02webpack.config.js
npm install --save-dev css-loader
2webpack.config.js
npm install --save-dev css-loader
3Npm run eject18
Type:
npm install --save-dev css-loader
4Mặc định:
import cssStyleClassName from './MyAppStyle.css';
24Cho phép/vô hiệu hóa các mô -đun ES có tên xuất khẩu cho người dân địa phương.
Cảnh báo when you use css modules for pre-rendering [for example SSR]. For pre-rendering with
Npm run eject20 you should use this option instead of
Npm run eject21 in the pre-rendering bundle. It doesn't embed CSS but only exports the identifier mappings.
webpack.config.js
npm install --save-dev css-loader
5import cssStyleClassName from './MyAppStyle.css';
17
import cssStyleClassName from './MyAppStyle.css';
Type:
npm install --save-dev css-loader
6Tên của người dân địa phương được chuyển đổi thành Camelcase, tức là tùy chọn
.styleName{
your properties here...
}
90 có giá trị .styleName{
your properties here...
}
91 theo mặc định.Nó không được phép sử dụng các từ dành riêng của JavaScript trong tên lớp CSS.
Bạn có thể bật mô -đun ES có tên xuất khẩu bằng cách sử dụng:
webpack.config.js
npm install --save-dev css-loader
7Để đặt tên tùy chỉnh cho tên được đặt tên, có thể sử dụng tùy chọn
.styleName{
your properties here...
}
90 làm hàm. Ví dụ dưới đây trong phần .styleName{
your properties here...
}
93.import cssStyleClassName from './MyAppStyle.css';
16
import cssStyleClassName from './MyAppStyle.css';
Type:
npm install --save-dev css-loader
8Cho phép
import cssStyleClassName from './MyAppStyle.css';
06 xuất tên từ lớp toàn cầu hoặc ID, vì vậy bạn có thể sử dụng tên địa phương.Mặc định: Dựa trên giá trị tùy chọn
.styleName{
your properties here...
}
98, nếu import cssStyleClassName from './MyAppStyle.css';
21 - .styleName{
your properties here...
}
91, nếu không Npm run eject01
webpack.config.js
npm install --save-dev css-loader
9import cssStyleClassName from './MyAppStyle.css';
18
import cssStyleClassName from './MyAppStyle.css';
Type:
yarn add -D css-loader
0Phong cách xuất khẩu tên lớp.
Theo mặc định, các phím JSON đã xuất phản chiếu các tên lớp [tức là giá trị
Npm run eject01].
Chỉ giá trị
.styleName{
your properties here...
}
91 cho phép nếu bạn đặt giá trị .styleName{
your properties here...
}
88 thành import cssStyleClassName from './MyAppStyle.css';
21.webpack.config.js
yarn add -D css-loader
1import cssStyleClassName from './MyAppStyle.css';
19
import cssStyleClassName from './MyAppStyle.css';
Type:
yarn add -D css-loader
2Tên
Loại hình
webpack.config.js
yarn add -D css-loader
3src/index.js
yarn add -D css-loader
4Npm run eject
40
Xuất mặc định là mảng các mô -đun với API cụ thể được sử dụng trong
Npm run eject43 hoặc khác.
webpack.config.js
yarn add -D css-loader
5src/index.js
yarn add -D css-loader
6Npm run eject
46
Cảnh báo
Bạn không cần
Npm run eject43 nữa, vui lòng xóa nó.
Cảnh báo
Bạn không cần
Npm run eject43 nữa, vui lòng xóa nó.
Tùy chọn
Npm run eject48 sẽ được bật nếu bạn muốn sử dụng nó với
Npm run eject49, theo mặc định cho người dân địa phương sẽ được sử dụng có tên xuất khẩu.
webpack.config.js
yarn add -D css-loader
7src/index.js
yarn add -D css-loader
8Npm run eject
51
Cảnh báo
Bạn không cần
Npm run eject43 nữa, vui lòng xóa nó.
Cảnh báo
Bạn không cần
Npm run eject43 nữa, vui lòng xóa nó.
Cảnh báo
Bạn không cần
Npm run eject43 nữa, vui lòng xóa nó.
Cảnh báo
Tùy chọn
Npm run eject48 sẽ được bật nếu bạn muốn sử dụng nó vớiNpm run eject49, theo mặc định cho người dân địa phương sẽ được sử dụng có tên xuất khẩu.
Xuất mặc định là
import cssStyleClassName from './MyAppStyle.css';
60.import cssStyleClassName from './MyAppStyle.css';
07 Các quy tắc chưa được phép, thêm thông tinBản đồ nguồn hiện không được hỗ trợ trong
Npm run eject56 do lỗi
- Xuất mặc định là bảng kiểu có thể xây dựng [nghĩa là
Npm run eject
41]. - Hữu ích cho các yếu tố tùy chỉnh và bóng tối.
webpack.config.js
yarn add -D css-loader
9src/index.js
pnpm add -D css-loader
0Thêm thông tin:
pnpm add -D css-loader
1Sử dụng tập lệnh mô -đun CSS để nhập bảng kiểu
Hồ sơ kiểu có thể xây dựng: Kiểu tái sử dụng liền mạch
Đối với mục đích di chuyển, bạn có thể sử dụng cấu hình sau:
Ví dụ
Giới thiệu
webpack.config.js
pnpm add -D css-loader
2Đối với Npm run eject
58 xây dựng, nên trích xuất CSS từ gói của bạn có thể sử dụng tải tài nguyên CSS/JS song song sau này. Điều này có thể đạt được bằng cách sử dụng mini-CSS-Extract-plugin, bởi vì nó tạo ra các tệp CSS riêng biệt. Đối với chế độ Npm run eject
59 [bao gồm Npm run eject
60], bạn có thể sử dụng trình tải kiểu, vì nó tiêm CSS vào DOM bằng cách sử dụng nhiều và hoạt động nhanh hơn.
Ghi chú
Không sử dụngNpm run eject43 và
Npm run eject20 cùng nhau.
Tắt phân giải URL bằng cách sử dụng bình luận Npm run eject
63
Với sự trợ giúp của
Npm run eject63Comment, có thể vô hiệu hóa việc xử lý các nguồn cho các quy tắc và cho các tuyên bố riêng lẻ.
3pnpm add -D css-loader
webpack.config.js
pnpm add -D css-loader
4Tài sản
Các
Npm run eject65 sau đây có thể tải các tệp CSS, nhúng hình ảnh PNG/JPG/JPG/SVG nhỏ cũng như phông chữ dưới dạng URL dữ liệu và sao chép các tệp lớn hơn vào thư mục đầu ra.
Đối với WebPack v5:
Trích xuất
Để xây dựng sản xuất, nên trích xuất CSS từ gói của bạn có thể sử dụng tải song song tài nguyên CSS/JS sau này.
Điều này có thể đạt được bằng cách sử dụng mini-CSS-Extract-plugin để trích xuất CSS khi chạy ở chế độ sản xuất.
webpack.config.js
pnpm add -D css-loader
5Thay vào đó, nếu tìm kiếm hiệu suất phát triển tốt hơn và đầu ra CSS bắt chước sản xuất. Trích xuất-CSS-Chunks-WebPack-Plugin cung cấp một mô-đun nóng tải lại thân thiện, phiên bản mở rộng của mini-CSS-Extract-plugin. HMR Real CSS Files in dev, hoạt động như mini-CSS trong không DEV
index.css
pnpm add -D css-loader
6webpack.config.js
pnpm add -D css-loader
7CSS thuần túy, mô -đun CSS và Postcss
webpack.config.js
pnpm add -D css-loader
8Khi bạn có CSS thuần túy [không có mô -đun CSS], các mô -đun CSS và Postcss trong dự án của bạn, bạn có thể sử dụng thiết lập này:
Giải quyết các URL chưa được giải quyết bằng cách sử dụng bí danh
Xuất xuất với tên xuất tùy chỉnh
webpack.config.js
pnpm add -D css-loader
9variables.scss
Tách các tính năng ________ 225 và
Npm run eject67
import cssStyleClassName from './MyAppStyle.css';
00Component.module.scss
Thiết lập sau đây là một ví dụ về việc cho phép các tính năng
.styleName{
your properties here...
}
25 [chẳng hạn như .styleName{
your properties here...
}
26 và .styleName{
your properties here...
}
27] mà không sử dụng chức năng Npm run eject67 bằng cách đặt tùy chọn
import cssStyleClassName from './MyAppStyle.css';
61 cho tất cả các tệp không khớp với quy ước đặt tên Npm run eject73. Điều này là để tham khảo vì có các tính năng
Npm run eject74 được áp dụng cho tất cả các tệp là hành vi mặc định ____106 trước V4. Trong khi đó, tất cả các tệp khớp với
Npm run eject73 được coi là
Npm run eject77 trong ví dụ này.
import cssStyleClassName from './MyAppStyle.css';
01Component.jsx
Một trường hợp ví dụ được giả định trong đó một dự án yêu cầu các biến vẽ Canvas được đồng bộ hóa với CSS - Vẽ Canvas sử dụng cùng một màu [được đặt bởi tên màu trong JavaScript] làm nền HTML [được đặt theo tên lớp trong CSS].
import cssStyleClassName from './MyAppStyle.css';
02Tệp được coi là ________ 374 chỉ.
Tệp được coi là
Npm run eject67.
Sử dụng cả chức năng
Npm run eject67 cũng như các biến SCSS trực tiếp trong JavaScript.
Đóng góp
Xin vui lòng dành một chút thời gian để đọc các hướng dẫn đóng góp của chúng tôi nếu bạn chưa làm như vậy.