webpack学习笔记——打包后直接访问页面,图片路径错误

我说的这种图片路径错误是这样的,运行webpack-dev-server,一切正常,没有错误。当webpack以后,直接打开index页面,报错,图片找不到,找不到的缘由是路径错误。javascript

先看个人项目代码css

webpack.config.jshtml

var Webpack = require("webpack");
var path = require("path");

module.exports = {
    entry: './js/entry.js',
    output: {
        path: path.join(__dirname, '/build'),
        filename: 'bundle.js',
        publicPath: "/src/"
    },
    module: {
        loaders: [{
                test: /\.css$/,
                loader: 'style-loader!css-loader'
            }, {
                test: /\.(png|jpg)$/,
                loader: 'url-loader?limit=8192&name=images/[hash:8].[name].[ext]'
            }, 
            {
                test: require.resolve('zepto'),
                loader: 'exports-loader?window.Zepto!script-loader'
            }
        ]
    },
    watch: true,
    devtool: "cheap-module-eval-source-map"
}

这里设置了publicPath,用法点击这里java

index.html中引用路径以下:webpack

<script type="text/javascript" src="src/bundle.js" ></script>

当运行webapck-dev-server时,http://localhost:8080/显示正常。web

紧接着,要打包,目的是脱离命令能直接访问页面。操做以下:webpack-dev-server

  1.执行webpack测试

  2.将build中的文件所有拷贝到src中ui

  3.查看页面url

由于图片路径错误,因此找不到图片。

我经过单独给处理图片的loader设置publicPath解决了这个问题,以下:

       {
                test: /\.(png|jpg)$/,
                loader: 'url-loader?limit=8192&name=images/[hash:8].[name].[ext]',
                options:{
                    publicPath:'/'
                }
            }

 

 而后测试,webapck-dev-server成功,wepback成功,打开页面访问,成功。

路径是这个样子的。

相关文章
相关标签/搜索