前提・実現したいこと
devServerでローカルサーバー実行中に、sassとjsを編集して保存したらコンパイルされるようにしたいのですが、
現状、下記のコードで、
npm run start
と npm run watch
の2つのコマンドを実行して作業をしています。
これを一つのコマンドにまとめることは出来ないでしょうか?
package.jsonのscript
"watch": "webpack --watch --inline --config webpack.dev.js", "start": "webpack-dev-server --inline --config webpack.dev.js",
webpack.common.js
const webpack = require('webpack'); const ExtractTextPlugin = require('extract-text-webpack-plugin'); const autoprefixer = require('autoprefixer'); const path = require('path'); module.exports = { entry: { './public/assets/application.js': './_src/js/_index.js', './public/assets/style.css': './_src/sass/_index.sass', }, output: { path: __dirname, filename: '[name]', }, module: { rules: [{ test: /.js$/, use: [{ loader: 'babel-loader', options: { presets: 'env' } }], exclude: /node_modules/, }, { test: /.sass$/, use: [ ExtractTextPlugin.loader, { loader: 'css-loader', options: { url: false, sourceMap: true, minimize: true } }, { loader: 'postcss-loader', options: { sourceMap: true, plugins: [ autoprefixer({ //browsers: 'last 2 versions', grid: true }) ] } }, { loader: 'sass-loader', options: { sourceMap: true } }, ] } ] }, plugins: [ new ExtractTextPlugin('[name]'), ] };
webpack.dev.js
const merge = require('webpack-merge') const common = require('./webpack.common.js') const path = require('path') module.exports = merge(common, { mode: 'development', devServer: { open: true, openPage: 'index.html', contentBase: path.join(__dirname, 'public'), watchContentBase: true, port: 3000, }, devtool: 'source-map', });
補足情報(FW/ツールのバージョンなど)
下記バージョン
npm: 6.4.1
node: 10.15.0
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。