Jim*_*ong 8 html javascript favicon frontend webpack
我有一个React/Redux应用程序,我正在使用webpack来转换我的JSX和ES6,并将我的样式表和图像加载到我的JS中.我的开发服务器托管在端口3000上.
这是我的webpack.config.js:
var path = require('path');
var webpack = require('webpack');
var HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
devtool: 'cheap-module-eval-source-map',
entry: [
'webpack-hot-middleware/client',
'./src/js'
],
output: {
path: path.join(__dirname, 'dist'),
filename: 'bundle.js',
publicPath: '/static/'
},
plugins: [
new webpack.optimize.OccurenceOrderPlugin(),
new webpack.HotModuleReplacementPlugin(),
new webpack.NoErrorsPlugin(),
new HtmlWebpackPlugin({
favicon: 'src/images/favicon.ico'
})
],
module: {
loaders: [{
test: /\.js$/,
loaders: [ 'babel' ],
exclude: /node_modules/,
include: __dirname
}, {
test: /\.less?$/,
loaders: [ 'style', 'css', 'less' ],
include: __dirname
},
{
test: /\.(otf|eot|svg|ttf|woff|woff2)(\?v=[0-9]\.[0-9]\.[0-9])?$/,
loaders: [ 'url' ],
include: __dirname
},
{
test: /\.(png|ico|gif)?$/,
loaders: [ 'file' ],
include: __dirname
}]
}
};
Run Code Online (Sandbox Code Playgroud)
当我点击localhost:3000时,除了我的favicon之外,我希望那里的一切都在那里.如果我去localhost:3000/static/favicon.ico,我的favicon就在那里.可以使用一些专业知识调试此问题.
浏览器将在 中查找您的网站图标localhost:3000/favicon.ico,因此它就位于该位置。尝试重写 url 以服务favicon.ico于/favicon.ico路由。例如,如果您使用historyApiFallback,请执行以下操作:
historyApiFallback: {
rewrites: [
// shows favicon
{ from: /favicon.ico/, to: '[path/to/favicon]' }
]
}
Run Code Online (Sandbox Code Playgroud)