2016-11-09 18 views
6

Có vẻ như tôi thiếu cài đặt để tải hình ảnh trong cấu hình webpack nếu thẻ hình ảnh nằm trong mẫu index.ejs của tôi.Tệp Webpack/Trình tải ảnh cho hình ảnh trong .ejs template

Tất cả hình ảnh trong tệp html của tôi trong dự án của tôi được đổi tên và tải đúng cách trong khi xây dựng, nhưng thẻ hình ảnh trong tệp .ejs bị bỏ qua.

tức trong .ejs của tôi nếu tôi có <img src="../../home.png"> nó vẫn như vậy, nhưng trong tập tin html bình thường nó thay đổi để <img src="12345677.png">

bộ tải hiện tại của tôi:

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' 
      } 
     ] 

và plugin quan trọng:

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

Những 'HTMLWebpackPlugin' phiên bản là bạn sử dụng? [this] (https://github.com/ampedandwired/html-webpack-plugin/blob/master/migration.md#loaders-in-templates) mô tả cách trình nạp bên trong các mẫu hiện được hỗ trợ trong 2.0 –

+0

@RedMercury cảm ơn người đàn ông! nó đã khiến tôi phát điên! nó hoạt động như một nét duyên dáng –

Trả lời

2

Tôi nghĩ ejs không hỗ trợ trình tải hình ảnh

Bạn có thể thử liên kết này underscore-template loader để tải các tập tin hình ảnh như đề nghị của author trong thread

Bộ nạp này khác cho webpack bao gồm ejs-loader

+2

là niềm vui của webpack haha, một thư viện loader phức tạp khác để hiểu. Ok sẽ cho thử này, cảm ơn người đàn ông. – StevieB

Các vấn đề liên quan