2016-08-10 3 views
1

Чтобы решить проблему, которую я имел с моим файлом webpack.config.js, я скопировал строку из a webpack blog. Строка помечена в коде ниже. Однако я не могу легко понять, что делает линия, а googling не привел меня к простому объяснению. Итак, какова цель/синтаксис указанной строки? Короткое объяснение, вероятно, будет достаточно, но ссылка на некоторую (официальную) документацию также будет полезна.Что означает синтаксис синтаксиса webpack html?

var path = require('path'); 

module.exports = { 
    entry: { 
     javascript: ['babel-polyfill', './src/main.js'], 
     html: './index.html' 
    }, 
    output: { 
     path: path.join(__dirname, 'build'), 
     filename: 'bundle.js' 
    }, 
    devtools: 'inline-source-map', 
    module: { 
     loaders: [ 
      { 
       loader: 'babel-loader', 
       test: path.join(__dirname, 'src'), 
       query: { 
        presets: ['react', 'es2015', 'stage-2'] 
       } 
      }, 
      { 
       test: /\.html$/, 
       loader: 'file?name=[name].[ext]' // <---- ********** 
      } 
     ] 
    } 
}; 

ответ

3

WebPack загрузчик файлы позволяет указать пользовательский шаблон имени файла для импортированных файлов с помощью параметра name= запроса:

https://github.com/webpack/file-loader#filename-templates

+1

Ваша ссылка принимает меня к точной информации, которую я искал, например. объясняя 'имя' и' ext', а [дальнейшая ссылка оттуда] (http://webpack.github.io/docs/using-loaders.html) приводит меня к более общей информации об использовании загрузчиков, например. объясняя '?' и '!'. Большое спасибо. –

2

Webpack 1 поддерживает конфигурирование загрузчика полностью через строку запроса, как DSL , Написанный в альтернативном синтаксисе для конфигурации делает его понятным (er), что происходит:

{ 
    test: /\.html$/, 
    loader: 'file', // Use the file loader 
    query: { // Configuring it with the following options 
    name: '[name].[ext]' 
    // Set the name of the HTML files that are output to be 
    // the local name of the file, followed by a literal dot character 
    // followed by the file's extension. 
    } 
} 
+1

Я выбрал ответ из @ 7zark7 из-за ссылки (-ов). Однако вы предоставили очень полезную информацию об альтернативном синтаксисе, который не является (или, по крайней мере, не явно) описанным в этом ответе, его прямой ссылкой или второй ссылкой, о которой я упоминал. Благодарю. –

Смежные вопросы