archakov06
@archakov06
Frontend-разработчик (ReactJS)

Webpack: Как сохранять импортируемые JS, CSS в разные папки?

Возникла такая проблемка. Я уже второй день, как начал изучать Webpack, после перехода с Gulp/Grunt. Не могу разобраться, как сохранить к примеру CSS файл в отдельную папку, а не там, где сохраняется мой бандл (JS файл).

var ExtractTextPlugin = require("extract-text-webpack-plugin");
var Webpack = require('webpack');
var path = require('path');

var ROOT_PATH = path.resolve(__dirname);
var APP_PATH = path.resolve(ROOT_PATH, 'dev/js/app');
var BUILD_PATH = path.resolve(ROOT_PATH, 'build');

module.exports = {

	entry: APP_PATH,
	output: {
		path: BUILD_PATH,
		publicPath: BUILD_PATH + '/',
		filename: 'bundle.js'
	},
	module: {
		loaders: [
			{
				test: /\.js$/,
				exclude: /(node_modules)/, 
				loader: "uglify!babel-loader"
			},
			{ 
				test: /\.min\.css/,
				loader: ExtractTextPlugin.extract("css-loader")
			},
			{
				test: /\.styl$/,
				loader: ExtractTextPlugin.extract("css-loader!stylus-loader")
			}
		]
	},
	plugins: [new ExtractTextPlugin("bundle.css")]
};


import {Test} from './classes/test'
import '../stylus/app.styl';

var test = new Test();


В итоге, после запуска вебпак, все сохраняется в папку /build. Я использую препроцессор Stylus и все работает хорошо. Но, вот хочется сохранять эти файлы отдельно, а не в одной папке.

Некоторые советовали использовать Webpack в связке с Gulp, но, мне кажется это извращение. Посоветуйте более грамотное решение.
  • Вопрос задан
  • 1509 просмотров
Решения вопроса 1
@UsulPro
Попробуйте так:
loader: ExtractTextPlugin.extract('css-loader',{publicPath:'./css/'})
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы