1、client
const clientConfig = {
mode: 'development',
entry: './src/client/index.js', // 入口
output: { // 打包的文件要放在哪里去
filename: 'index.js', // 打包之后起的名字
path: path.resolve(__dirname, 'public') // 打包过后将文件放在哪个目录下
},
module: {
rules: [
{
test: /\.css$/,
use: ['style-loader',
{
loader: 'css-loader',
options: {
importLoaders: 1,
modules: true,
localIdentName: '[name]_[local]_[hash:base64:5]'
}
}
]
}
]
}
};
2、server
const serverConfig = {
target: 'node', // 确定打包的是服务端的代码
mode: 'development',
entry: './src/server/index.js', // 入口
output: { // 打包的文件要放在哪里去
filename: 'bundle.js', // 打包之后起的名字
path: path.resolve(__dirname, 'build') // 打包过后将文件放在哪个目录下
},
externals: [nodeExternals()], // 依靠node_modules中的文件还需要引入这个包,避免打包警告
module: {
rules: [
{
test: /\.css?$/,
use: ['isomorphic-style-loader', {
loader: "css-loader",
options: {
importLoaders: 1,
modules: true,
localIdentName: '[name]_[local]_[hash:base64:5]'
}
}]
}
]
}
};
使用
// index.css
body{
background: red;
}
import React from 'react';
import styles from './index.css'
const Login = () => {
return (
<div className={styles}>
<div>Login</div>
</div>
)
}
export default Login;