Created
February 28, 2017 15:55
-
-
Save neolite/da84718be0886410214a0e6b9ba60e5d to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| var path = require('path') | |
| var config = require('../config') | |
| var utils = require('./utils') | |
| var projectRoot = path.resolve(__dirname, '../') | |
| var env = process.env.NODE_ENV | |
| // check env & config/index.js to decide whether to enable CSS source maps for the | |
| // various preprocessor loaders added to vue-loader at the end of this file | |
| var cssSourceMapDev = (env === 'development' && config.dev.cssSourceMap) | |
| var cssSourceMapProd = (env === 'production' && config.build.productionSourceMap) | |
| var useCssSourceMap = cssSourceMapDev || cssSourceMapProd | |
| module.exports = { | |
| entry: { | |
| app: './src/main.js' | |
| }, | |
| output: { | |
| path: config.build.assetsRoot, | |
| publicPath: process.env.NODE_ENV === 'production' ? config.build.assetsPublicPath : config.dev.assetsPublicPath, | |
| filename: '[name].js' | |
| }, | |
| resolve: { | |
| extensions: ['', '.js', '.vue', '.json'], | |
| fallback: [path.join(__dirname, '../node_modules')], | |
| alias: { | |
| 'vue$': 'vue/dist/vue.common.js', | |
| 'src': path.resolve(__dirname, '../src'), | |
| 'assets': path.resolve(__dirname, '../src/assets'), | |
| 'components': path.resolve(__dirname, '../src/components') | |
| } | |
| }, | |
| resolveLoader: { | |
| fallback: [path.join(__dirname, '../node_modules')] | |
| }, | |
| module: { | |
| loaders: [ | |
| { | |
| test: /\.vue$/, | |
| loader: 'vue' | |
| }, | |
| { | |
| test: /\.js$/, | |
| loader: 'babel', | |
| include: [ | |
| path.join(projectRoot, 'src') | |
| ], | |
| exclude: /node_modules/ | |
| }, | |
| { | |
| test: /\.json$/, | |
| loader: 'json' | |
| }, | |
| { | |
| test: /\.(png|jpe?g|gif|svg)(\?.*)?$/, | |
| loader: 'url', | |
| query: { | |
| limit: 10000, | |
| name: utils.assetsPath('img/[name].[hash:7].[ext]') | |
| } | |
| }, | |
| { | |
| test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/, | |
| loader: 'url', | |
| query: { | |
| limit: 10000, | |
| name: utils.assetsPath('fonts/[name].[hash:7].[ext]') | |
| } | |
| }, { | |
| test: /\.s[a|c]ss$/, | |
| loader: 'style!css!sass' | |
| } | |
| ] | |
| }, | |
| vue: { | |
| loaders: utils.cssLoaders({ sourceMap: useCssSourceMap }), | |
| postcss: [ | |
| require('autoprefixer')({ | |
| browsers: ['last 2 versions'] | |
| }) | |
| ] | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment