2016-09-22 49 views
5

每當我在HTML中添加圖像標記和我做這樣的事情:Angular2圖像不顯示

<img src="../resources/img/myimg.png"> 

圖像不顯示。相反,我得到這樣的東西 empty image

我已經嘗試把<base href="/">在我的index.html頭,但我沒有得到任何更改。 這可能是什麼原因? 我還需要做些什麼來完成這項工作?

我也嘗試安裝圖像的WebPack裝載機 這裏是我的webpack.config.js的內容文件

var webpack = require('webpack'); 
 
var path = require('path'); 
 

 

 
// Webpack Config 
 
var webpackConfig = { 
 
    entry: { 
 
    'polyfills': './src/polyfills.browser.ts', 
 
    'vendor': './src/vendor.browser.ts', 
 
    'main':  './src/main.browser.ts', 
 
    }, 
 

 
    output: { 
 
    path: __dirname + '/dist', 
 
    }, 
 

 
    plugins: [ 
 
    new webpack.optimize.OccurenceOrderPlugin(true), 
 
    new webpack.optimize.CommonsChunkPlugin({ name: ['main', 'vendor', 'polyfills'], minChunks: Infinity }), 
 
    ], 
 

 
    module: { 
 
    loaders: [ 
 
     // .ts files for TypeScript 
 
     { test: /\.ts$/, loaders: ['awesome-typescript-loader', 'angular2-template-loader'] }, 
 
     { test: /\.css$/, loaders: ['to-string-loader', 'css-loader'] }, 
 
     { test: /\.html$/, loader: 'raw-loader' }, 
 
     { 
 
    test: /.*\.(gif|png|jpe?g|svg)$/i, 
 
    loaders: [ 
 
     'file?hash=sha512&digest=hex&name=[hash].[ext]', 
 
     'image-webpack?{progressive:true, optimizationLevel: 7, interlaced: false, pngquant:{quality: "65-90", speed: 4}}' 
 
    ] 
 
    } 
 
    ] 
 
    } 
 

 
}; 
 

 

 
// Our Webpack Defaults 
 
var defaultConfig = { 
 
    devtool: 'cheap-module-source-map', 
 
    cache: true, 
 
    debug: true, 
 
    output: { 
 
    filename: '[name].bundle.js', 
 
    sourceMapFilename: '[name].map', 
 
    chunkFilename: '[id].chunk.js' 
 
    }, 
 

 
    resolve: { 
 
    root: [ path.join(__dirname, 'src') ], 
 
    extensions: ['', '.ts', '.js'] 
 
    }, 
 

 
    devServer: { 
 
    historyApiFallback: true, 
 
    watchOptions: { aggregateTimeout: 300, poll: 1000 } 
 
    }, 
 

 
    node: { 
 
    global: 1, 
 
    crypto: 'empty', 
 
    module: 0, 
 
    Buffer: 0, 
 
    clearImmediate: 0, 
 
    setImmediate: 0 
 
    } 
 
}; 
 

 
var webpackMerge = require('webpack-merge'); 
 
module.exports = webpackMerge(defaultConfig, webpackConfig);

+0

單擊F12並查看控制檯輸出在瀏覽器中的內容。 –

回答

7

你不能擺脫base href範圍,你應該將您的資產移動到src目錄中,並在給出路徑後,例如./resources它將是src/resources

+0

我喜歡這個'src'的文件夾結構包含'app','app'包含'resources'文件夾和每個單獨組件的文件夾。它是從一個組件的HTML佈局中,我使用相對佈局來鏈接存儲在資源文件夾內的img文件。 – akinmail

+0

感謝這工作。我現在明白'base href'的作用了。雖然很令人尷尬。 – akinmail