我有一个包含css的webpack加载器,我想添加另一个带有media属性的css链接进行打印
<link rel="stylesheet" media="print" href="file.js">
我尝试修改style-loader模块的addStyles.js,并在options对象中添加了media属性来读取传递给style-loader的查询参数
loaders: [
{
test: "print.css",
loaders: [
'style-loader?media=print', // here i pass the print value to media in options object
'css-loader?sourceMap'
]
},
这里的问题是,即使我为单个文件传递媒体参数,它也会在所有包含的css文件中生成此文件,我该如何避免这种情况?
在这里你可以找到完整的装载机
loaders: [
{
test: /\.global\.css$/,
loaders: [
'style-loader',
'css-loader?sourceMap'
]
},
{
test: /^((?!\.global).)*\.css$/,
loaders: [
'style-loader',
'css-loader?modules&sourceMap&importLoaders=1&localIdentName=[name]__[local]___[hash:base64:5]'
]
},
{ test: /\.woff(\?v=\d+\.\d+\.\d+)?$/, loader: 'url?limit=10000&mimetype=application/font-woff' },
{ test: /\.woff2(\?v=\d+\.\d+\.\d+)?$/, loader: 'url?limit=10000&mimetype=application/font-woff' },
{ test: /\.ttf(\?v=\d+\.\d+\.\d+)?$/, loader: 'url?limit=10000&mimetype=application/octet-stream' },
{ test: /\.eot(\?v=\d+\.\d+\.\d+)?$/, loader: 'file' },
{ test: /\.svg(\?v=\d+\.\d+\.\d+)?$/, loader: 'url?limit=10000&mimetype=image/svg+xml' },
]