Загрузка динамического изображения в веб-пакет

Я использую Angular с Webpack (с такими загрузчиками, как файловый загрузчик, URL-загрузчик и т. д.)

Теперь я хочу загрузить изображение, которое обслуживается через http.

Сборка прошла успешно, когда я использовал require('./imgs/profile.png')

Но когда я пытался сказать, например. require('http://myserver.com/images/profile.png') сбой сборки.

Теперь проблема в том, что моих изображений нет в локальной среде, а они есть на каком-то стороннем сервере, скажем, например. АВС S3.

Как этого добиться? Ниже мой webpack.config.js

'use strict';

var HtmlWebpackPlugin = require('html-webpack-plugin');
var path = require('path');

var config = {
  entry: './src/myapp.js',

  output: {
    path: './dist/',
    filename: 'myapp.min.js'
  },

  plugins: [
    new HtmlWebpackPlugin({
      template: './src/index.html'
    })
  ],

  module: {
    loaders: [{
      test: /\.js?$/,
      exclude: /node_modules/,
      loader: 'babel',
      query: {
        presets: ['es2015']
      }
    }, {
      test: /\.(jpg|jpeg|png|gif|svg)$/i,
      loader: 'file'
    }, {
      test: /\.(html)$/i,
      loader: 'file?name=[name].[ext]',
      include: [
        path.resolve(__dirname, 'src', 'app')
      ]
    }, {
      test: /\.(ttf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/,
      loader: "file"
    }, {
      test: /\.less$/,
      loader: 'style-loader!css-loader!less-loader'
    }, {
      test: /\.css$/,
      loader: 'style-loader!css-loader'
    }, {
      test: /\.woff(2)?(\?v=[0-9]\.[0-9]\.[0-9])?$/,
      loader: "url-loader?limit=10000&mimetype=application/font-woff"
    }]
  }
};

module.exports = config;

person Ashwin Hegde    schedule 04.07.2016    source источник


Ответы (1)


На данный момент вместо

require('http://myserver.com/images/profile.png')

Я назначил путь к изображению в виде строки для $scope

$scope.imagePath = "http://myserver.com/images/profile.png";

и в шаблоне

<img ng-src={{imagePath}} alt="image" />

и это сработало для меня.

person Ashwin Hegde    schedule 05.07.2016