You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
1.6 KiB
64 lines
1.6 KiB
3 weeks ago
|
var path = require('path')
|
||
|
var config = require('../config')
|
||
|
var sass = require('sass')
|
||
|
var MiniCssExtractPlugin = require('mini-css-extract-plugin')
|
||
|
|
||
|
exports.assetsPath = function (_path) {
|
||
|
var assetsSubDirectory = process.env.NODE_ENV === 'production'
|
||
|
? config.build.assetsSubDirectory
|
||
|
: config.dev.assetsSubDirectory
|
||
|
return path.posix.join(assetsSubDirectory, _path)
|
||
|
}
|
||
|
|
||
|
exports.cssLoaders = function (options) {
|
||
|
options = options || {}
|
||
|
|
||
|
function generateLoaders (loaders) {
|
||
|
// Extract CSS when that option is specified
|
||
|
// (which is the case during production build)
|
||
|
if (options.extract) {
|
||
|
return [MiniCssExtractPlugin.loader].concat(loaders)
|
||
|
} else {
|
||
|
return ['vue-style-loader'].concat(loaders)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// http://vuejs.github.io/vue-loader/configurations/extract-css.html
|
||
|
return [
|
||
|
{
|
||
|
test: /\.(post)?css$/,
|
||
|
use: generateLoaders(['css-loader', 'postcss-loader']),
|
||
|
},
|
||
|
{
|
||
|
test: /\.less$/,
|
||
|
use: generateLoaders(['css-loader', 'postcss-loader', 'less-loader']),
|
||
|
},
|
||
|
{
|
||
|
test: /\.sass$/,
|
||
|
use: generateLoaders([
|
||
|
'css-loader',
|
||
|
'postcss-loader',
|
||
|
{
|
||
|
loader: 'sass-loader',
|
||
|
options: {
|
||
|
indentedSyntax: true
|
||
|
}
|
||
|
}
|
||
|
])
|
||
|
},
|
||
|
{
|
||
|
test: /\.scss$/,
|
||
|
use: generateLoaders(['css-loader', 'postcss-loader', 'sass-loader'])
|
||
|
},
|
||
|
{
|
||
|
test: /\.styl(us)?$/,
|
||
|
use: generateLoaders(['css-loader', 'postcss-loader', 'stylus-loader']),
|
||
|
},
|
||
|
]
|
||
|
}
|
||
|
|
||
|
// Generate loaders for standalone style files (outside of .vue)
|
||
|
exports.styleLoaders = function (options) {
|
||
|
return exports.cssLoaders(options)
|
||
|
}
|