Как я могу настроить Webpack для использования моего собственного компилятора, такого как Babel, для преобразования моего кода? - PullRequest
0 голосов
/ 08 января 2019

Я пишу чистый es6, где использую babel для преобразования своего кода в es5 с помощью веб-пакета. Я хочу передать свой код через определенную функцию до или после полной компиляции, как показано на моем рисунке ниже: -

enter image description here

enter image description here

Нормальная конфигурация моего веб-пакета: -

var path               = require('path'),
    HtmlWebpackPlugin  = require('html-webpack-plugin'),
    ExtractTextPlugin = require('extract-text-webpack-plugin'),
    CleanWebpackPlugin = require('clean-webpack-plugin'),
    extractCSS = new ExtractTextPlugin({ filename: 'css.bundle.css'}),
    MyCompiler         = require('my-compiler');

  //Mycompiler.compile()//this is the function where i want to pass 
    my code from     

module.exports = {
   mode: 'development',
   entry: './src/app.js',
   output: {
    path: path.resolve(__dirname, 'dist'),
    filename: './app.js',
  },
  module: {
    rules: [
      {
        test: /\.js$/,
        use: {
          loader: 'babel-loader',
          options: {
            presets: ['@babel/preset-env'],
            plugins: [require('@babel/plugin-proposal-object-rest-spread')]
          }
        }
      },
      {
        test: /\.css$/,
        use: extractCSS.extract({ // Instance 1
          fallback: 'style-loader',
          use: [ 'css-loader' ]
        })
      },
      {
        test:/\.html$/,
        use:['html-loader']
      },
      {
        test:/\.html$/,
        use:[
          {
            loader:'file-loader',
            options:{
              name:'[name].[ext]',
            }
          }
        ],
        exclude:path.resolve(__dirname,'./src/index.html')
      },
      {
        test:/\.(jpg|png)$/,
        use:[
          {
            loader:'file-loader',
            options:{
              name:'[name].[ext]',
              outputPath:'img/',
              publicPath:'img/'
            }
          }
        ]
      }
    ]
  },
  plugins:[
    new HtmlWebpackPlugin({
      template:'./src/index.html'
    }),
    extractCSS
  ]
};

Как показано на рисунке, я хочу сделать так, как показано на рисунке 1 или рисунке 2, любой может мне помочь, я хочу передать весь свой код через Mycompiler.compile () . Ребята, пожалуйста, помогите мне, я пытаюсь сделать это за последний месяц, но я не могу решить эту проблему. пожалуйста, помогите мне

...