zoukankan      html  css  js  c++  java
  • vue2 build/webpack.base.conf.js

    'use strict'
    const path = require('path')
    const utils = require('./utils')
    const config = require('../config')
    const vueLoaderConfig = require('./vue-loader.conf')

    function resolve (dir) {
    return path.join(__dirname, '..', dir)
    }

    const createLintingRule = () => ({
    test: /.(js|vue)$/,
    loader: 'eslint-loader',
    enforce: 'pre',
    include: [resolve('src'), resolve('test')],
    options: {
    formatter: require('eslint-friendly-formatter'),
    emitWarning: !config.dev.showEslintErrorsInOverlay
    }
    })

    module.exports = {
    context: path.resolve(__dirname, '../'),
    entry: {
    app: './src/main.js'
    },
    output: {
    path: config.build.assetsRoot,
    filename: '[name].js',
    // publicPath: '../../'
    publicPath: process.env.NODE_ENV === 'production'
    ? config.build.assetsPublicPath
    : config.dev.assetsPublicPath
    },
    resolve: {
    extensions: ['.js', '.vue', '.json'],
    alias: {
    'vue$': 'vue/dist/vue.esm.js',
    '@': resolve('src'),
    'common': resolve('src/common'),
    'components': resolve('src/components'),
    'api': resolve('src/api'),
    'static': resolve('static')
    }
    },
    module: {
    rules: [
    ...(config.dev.useEslint ? [createLintingRule()] : []),
    {
    test: /.vue$/,
    loader: 'vue-loader',
    options: vueLoaderConfig
    },
    {
    test: /.js$/,
    loader: 'babel-loader',
    include: [resolve('src'), resolve('test'), resolve('node_modules/webpack-dev-server/client')]
    },
    {
    test: /.(png|jpe?g|gif|svg)(?.*)?$/,
    loader: 'url-loader',
    options: {
    limit: 10000,
    name: utils.assetsPath('img/[name].[hash:7].[ext]')
    }
    },
    {
    test: /.(mp4|webm|ogg|mp3|wav|flac|aac)(?.*)?$/,
    loader: 'url-loader',
    options: {
    limit: 10000,
    name: utils.assetsPath('media/[name].[hash:7].[ext]')
    }
    },
    {
    test: /.(woff2?|eot|ttf|otf)(?.*)?$/,
    loader: 'url-loader',
    options: {
    limit: 10000,
    name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
    }
    },
    {
    test: /.less$/,
    loader: 'style-loader!css-loader!less-loader'
    }
    ]
    },
    node: {
    // prevent webpack from injecting useless setImmediate polyfill because Vue
    // source contains it (although only uses it if it's native).
    setImmediate: false,
    // prevent webpack from injecting mocks to Node native modules
    // that does not make sense for the client
    dgram: 'empty',
    fs: 'empty',
    net: 'empty',
    tls: 'empty',
    child_process: 'empty'
    }
    }

  • 相关阅读:
    php -- 魔术方法 之 对象输出 : __toString()
    php -- each()、list()
    php -- 魔术方法、魔术常量 简单介绍
    webbench
    md5sum/opensll md5
    shopt
    MD5
    print显示特定的数据格式
    gdb调试4--回退
    字符串化#、拼接字符##和可变参数宏(...和_ _VA_ARGS_ _)
  • 原文地址:https://www.cnblogs.com/dmwcq/p/9717265.html
Copyright © 2011-2022 走看看