2016-11-09 7 views
6

Похоже, у меня отсутствует параметр для загрузки изображений в конфигурации веб-пакета, если тег изображения находится в моем шаблоне index.ejs.Загрузитель файлов/изображений Webpack для изображений в шаблоне .ejs

Все мои изображения в моих html-файлах в моем проекте получаются правильно переименованными и загружаются в течение моей сборки, но тег изображения в файле .ejs игнорируется.

то есть в моих .ejs, если у меня есть <img src="../../home.png"> остается тот путь, но в обычном HTML файле он изменяется на <img src="12345677.png">

Мои текущие погрузчики:

loaders: [ 
      //HTML Files 
      { 
       test: /\.html$/, 
       loader: 'html' 
      }, 
      //Transpile ES6 to ES5 
      { 
       test: /\.js$/, 
       include: path.join(__dirname, 'src'), 
       exclude: /node_modules/, 
       loader: 'babel', 
       query: { 
        presets: [ 
         ["es2015", {"module": false}] 
        ] 
       } 

      }, 
      //Extract Normal CSS 
      { 
       test: /\.css$/, 
       loader: ExtractTextPlugin.extract({ loader : 'css?sourceMap!autoprefixer', publicPath: "../"}) 

      }, 
      //Bundle Less into CSS Code 
      { 
       test: /\.less$/, 
       loader: ExtractTextPlugin.extract({ loader : 'css?sourceMap!autoprefixer!less?sourceMap', publicPath: "../"}) 
      }, 
      //Images 
      { 
       test: /\.(png|jpg|jpeg|gif|svg|woff|woff2|ttf|eot)$/, 
       loader: 'file' 
      } 
     ] 

и важные плагины:

plugins.push(
      new HtmlWebpackPlugin({ 
       hash: true, 
       filename: 'index.html', 
       template: './src/index.ejs', 
       favicon: './src/favicon.ico', 
       inject : false 
      }), 
      // Write out CSS bundle to its own file: 
      new ExtractTextPlugin({ 
       filename: 'css/[contenthash].styles.css', 
       allChunks: true 
      }), 
     ); 
+0

Какие 'HTMLWebpackPlugin' версии являются вы используете? [this] (https://github.com/ampedandwired/html-webpack-plugin/blob/master/migration.md#loaders-in-templates) описывает, как загрузчики внутри шаблонов теперь поддерживаются в 2.0 –

+0

@RedMercury благодарит человека! Это сводило меня с ума! он работает как шарм –

ответ

2

Я думаю ejs не имеет поддержки загрузчика изображения

Вы можете попробовать эту ссылку underscore-template loader загрузить файлы изображений, как предложено в этом authorthread

другой погрузчик для WebPack включает ejs-loader

+2

ugh радость webpack haha, еще одна сложная библиотека загрузчика для понимания. Хорошо, дайте эту попытку, спасибо человеку. – StevieB

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