1
0
Fork 0
mirror of https://github.com/terribleplan/next.js.git synced 2024-01-19 02:48:18 +00:00
next.js/examples/with-scoped-stylesheets-and-postcss/next.config.js

45 lines
1 KiB
JavaScript
Raw Normal View History

const fs = require('fs')
const trash = require('trash')
module.exports = {
webpack: (config) => {
config.plugins = config.plugins.filter(
(plugin) => (plugin.constructor.name !== 'UglifyJsPlugin')
)
config.module.rules.push(
{
test: /\.css$/,
use: [
{
loader: 'emit-file-loader',
options: {
name: 'dist/[path][name].[ext]'
}
},
{
loader: 'skeleton-loader',
options: {
procedure: function (content) {
const fileName = `${this._module.userRequest}.json`
const classNames = fs.readFileSync(fileName, 'utf8')
trash(fileName)
return ['module.exports = {',
`classNames: ${classNames},`,
`stylesheet: \`${content}\``,
'}'
].join('')
}
}
},
'postcss-loader'
]
}
)
return config
}
}