Webpack文件加载器:从远程目录加载资产

时间:2019-03-28 14:30:05

标签: webpack webpack-file-loader

使用webpack文件加载器,在SCSS条目中,我尝试加载一些遥远的SCSS。没问题,只是远程SCSS尝试从远程目录加载其他字体和图像。我无法将这些资产复制/粘贴到我的文件夹中,我需要在该远程目录中使用它们。我应该如何使用文件加载器?除了“ src”以外,还有其他选项可以加载吗?

我的webpack.config.js(位于项目的根目录):

module.exports = {
  mode: 'development',
  entry: {
    admin: [
      './src/js/admin.js',
      './src/sass/admin.scss',
    ],
  },
  output: {
    path: path.resolve(__dirname, './public/'),
    filename: 'js/[name].js'
  },
  module: {
    rules: [
      {
        test: /\.js/,
        loader: 'babel-loader'
      },
      {
        test : /\.css$/,
        use: [
          MiniCssExtractPlugin.loader,
          {
            loader: 'css-loader',
            options: { sourceMap: true }
          },
          {
            loader: 'postcss-loader',
            options: { sourceMap: true }
          }
        ]
      },
      {
        test: /\.scss$/,
        use: [
          MiniCssExtractPlugin.loader,
          {
            loader: 'css-loader',
            options: { sourceMap: true }
          },
          {
            loader: 'postcss-loader',
            options: { sourceMap: true }
          },
          {
            loader: "sass-loader",
            options: { sourceMap: true }
          }
        ]
      },
      {
        test: /.(png|jpg|gif|woff(2)?|eot|ttf|svg)(\?[a-z0-9=\.]+)?$/,
        use: [
          {
            loader: 'file-loader',
            options: {
              name: 'css/files/[hash].[ext]',
              publicPath: '..'
            }
          },
          {
            loader: 'file-loader',
            options: {
              name: 'css/files/[hash].[ext]',
              publicPath: '..',
              context: 'src'
            }
          }
        ]
      }
    ]
  },
};

我的scss入口点(./src/sass/admin.scss):

@import '../../vendor/wad-commons/wad-admin/_dev/sass/wadadmin';

因此,“ wadadmin.scss”文件使用了一些远程资产,位于:“ ../../ vendor / wad-commons / wad-admin / assets” 如何加载这些资产而不将其放入src文件夹?

谢谢!

0 个答案:

没有答案