Skip to content

Instantly share code, notes, and snippets.

@suhanlee
Last active March 15, 2018 18:30
Show Gist options
  • Save suhanlee/23f6ba70a316a4e9d86f40201d716703 to your computer and use it in GitHub Desktop.
Save suhanlee/23f6ba70a316a4e9d86f40201d716703 to your computer and use it in GitHub Desktop.
react webpack configuration
{
"name": "react-app",
"version": "0.1.0",
"private": true,
"dependencies": {
"react": "^16.2.0",
"react-dom": "^16.2.0",
"react-scripts": "1.1.1"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
},
"devDependencies": {
"babel-core": "^6.26.0",
"babel-loader": "^7.1.4",
"babel-preset-env": "^1.6.1",
"babel-preset-react": "^6.24.1",
"babel-preset-stage-0": "^6.24.1",
"css-loader": "^0.28.10",
"postcss-loader": "^2.1.1",
"style-loader": "^0.20.3",
"svg-inline-loader": "^0.8.0"
}
}
# javascript
$ npm install babel-core babel-loader babel-preset-env babel-preset-react babel-preset-stage-0 --save-dev
# css
$ npm install style-loader css-loader postcss-loader --save-dev
# svg
$ npm install svg-inline-loader --save-dev
# webpack cli
$ npm install webpack-cli -g
module.exports = {
entry: './src/index.js',
module: {
rules: [
{
test: /\.js$/,
exclude: /(node_modules)/,
loader: 'babel-loader',
query: {
presets: ['env', 'stage-0', 'react']
}
},
{
test: /\.css$/,
use: ['style-loader', 'css-loader', {
loader: 'postcss-loader',
options: {
plugins: () => [require('autoprefixer')]
}
}]
},
{
test: /\.svg$/,
loader: 'svg-inline-loader'
}
]
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment