cargadores de paquetes web e incluyen

Soy nuevo en webpack y estoy tratando de comprender los cargadores, así como sus propiedades, como prueba, cargador, incluir, etc.

Aquí hay un fragmento de muestra de webpack.config.js que encontré en google.

module: {
    loaders: [
      {
        test: /\.js$/,
        loader: 'babel-loader',
        include: [
          path.resolve(__dirname, 'index.js'),
          path.resolve(__dirname, 'config.js'),
          path.resolve(__dirname, 'lib'),
          path.resolve(__dirname, 'app'),
          path.resolve(__dirname, 'src')
        ],
        exclude: [
          path.resolve(__dirname, 'test', 'test.build.js')
        ],
        cacheDirectory: true,
        query: {
          presets: ['es2015']
        }
      },
    ]
}

¿Tengo razón en que la prueba: /.js$/ se usará solo para archivos con extensión .js?

El cargador: 'babel-loader', es el cargador que instalamos usando npm

El incluyen: Tengo muchas preguntas sobre esto. ¿Tengo razón en que todo lo que ponemos dentro de la matriz se transpilará? Eso significa que index.js, config.js y todos los archivos * .js en lib, app y src se transpilarán.

Más preguntas sobre incluyen: Cuando los archivos se vuelven a compilar, ¿se concatenan los archivos * .js en un archivo grande?

Creo que excluir se explica por sí mismo. No se transpilará.

¿Qué hace la consulta: {presets: ['es2015']}?

Respuestas a la pregunta(3)

Su respuesta a la pregunta