我有一个React组件,我正在尝试导入css。
import './Example.css';
class Example extends Component {
return <div className="example-class">Example</div>
}
我的文件结构如下所示
build
-index.js
src
-index.js
-Example.css
我的webpack.config.js
如下所示。
目前所有内容都已构建,但css似乎没有被提升。
有人能看到我在构建后访问我的类名需要做什么吗?
var path = require('path');
module.exports = {
entry: './src/index.js',
output: {
path: path.resolve(__dirname, 'build'),
filename: 'index.js',
libraryTarget: 'commonjs2'
},
module: {
rules: [
{
test: /\.js$/,
include: path.resolve(__dirname, 'src'),
exclude: /(node_modules|bower_components|build)/,
use: {
loader: 'babel-loader',
options: {
presets: ['env']
}
}
},
{
test: /\.css$/,
use: [ 'css-loader' ]
}
]
},
externals: {
'react': 'commonjs react'
}
};
答案 0 :(得分:2)
css-loader
仅处理CSS,但不会使其在浏览器中可用。您可以使用style-loader
,将CSS注入<style>
标记。 (另见Loading CSS)
{
test: /\.css$/,
use: [ 'style-loader', 'css-loader' ]
}
另一种可能性是使用extract-text-webpack-plugin
提取CSS。除了JavaScript包之外,它还将提取CSS并创建.css
文件。然后,您可以在HTML中包含CSS。
答案 1 :(得分:-1)
你可以试试这个:
import styles from './Example.css';
class Example extends Component {
return <div className={styles.example-class}>Example</div>
}