webpack 引入css-loader 应对多入口的问题

本文详细介绍了使用Webpack进行多入口文件配置的方法,并针对不同场景下的CSS加载问题提供了具体解决方案。同时,文中还分享了如何根据不同环境调整Webpack配置,以实现更高效的打包与优化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

var path = require('path');
var webpack = require('webpack');
module.exports = {
  entry :{
  "index": "./src/index/main.js",   //前台JS
  "admin": "./src/admin/main.js"   //后台JS
  },
  output: {
    path: path.resolve(__dirname, './dist'),
    publicPath: '/dist/',
    filename: '[name].js'
  },
  module: {
    rules: [
      {
        test: /\.vue$/,
        loader: 'vue-loader',
        options: {
          // vue-loader options go here
        }
      },
      {
        test: /\.js$/,
        loader: 'babel-loader',
        exclude: /node_modules/
      },
      {
        test: /\.css$/,
        loader: 'style-loader!css-loader?root=../'
      },
      {
        test: /\.(eot|svg|ttf|woff|woff2)$/,
        loader: 'file-loader'
      },
      {
        test: /\.(png|jpe?g|gif|svg)(\?\S*)?$/,
        loader: 'file-loader',
        options: {
          name: '[name].[ext]?[hash]'
        }
      }
    ]
  },
  resolve: {
    alias: {
      'vue$': 'vue/dist/vue',
    }
  },
  devServer: {
    historyApiFallback: true,
    noInfo: true
  },
    plugins: [
        new webpack.optimize.UglifyJsPlugin({
            compress: {
                warnings: false
            }
        })
    ]
};

if (process.env.NODE_ENV === 'production') {
  module.exports.devtool = '#source-map';
  // http://vue-loader.vuejs.org/en/workflow/production.html
  module.exports.plugins = (module.exports.plugins || []).concat([
    new webpack.DefinePlugin({
      'process.env': {
        NODE_ENV: '"production"'
      }
    }),
    new webpack.optimize.UglifyJsPlugin({
      compress: {
        warnings: false
      }
    }),
    new webpack.LoaderOptionsPlugin({
      minimize: true
    })
  ])
}

当webpack设置多入口且入口不在二级目录的时候(例如"./src/index/main.js"),css-loader则必须设置root 指向上一级目录即为../  

暂时只能统一设置,当多入口不在同级目录有什么解决方式还未找到

转载于:https://my.oschina.net/yakoras/blog/807840

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值