webpack配置路径的问题

发布于 2022-09-11 19:01:27 字数 2082 浏览 12 评论 0

clipboard.png

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<div class="small"></div>
<div class="big"></div>
</body>
</html>

index.js

import './style/style.css';

style.css

.small {
    width: 200px;
    height: 200px;
    background: url(../img/1.png) no-repeat;
}
.big {
    width: 500px;
    height: 350px;
    background: url(../img/2.jpg) no-repeat;
}

webpack.config.js

const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const CleanWebpackPlugin = require('clean-webpack-plugin');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');

module.exports = {
    mode: 'development',
    entry:{
        index:'./src/index.js',
    },
    output: {
        path: path.resolve(__dirname, 'dist'),
        filename: 'bundle.js',
    },
    devServer: {
      open:true,
      publicPath:'/'
    },
    module: {
        rules:[
            {
                test: /\.css$/,
                use: [MiniCssExtractPlugin.loader, 'css-loader']
            },
            {
                test: /\.(png|jpg)$/,
                loader: 'url-loader',
                options: {
                    limit: 3,
                    name: '[name].[hash:8].[ext]'
                }
            }
        ]
    },
    plugins: [
        new MiniCssExtractPlugin({
            filename: 'css/[name].[hash].css', 
            chunkFilename: '[id].[hash].css'
        }),
        new CleanWebpackPlugin(),
        new HtmlWebpackPlugin({
            filename: 'index.html',
            template: path.resolve(__dirname, 'src/index.html'),         
        }),
    ]




};

npx webpack-dev-server 之后显示图片路径不对,有没有大佬指点一下 谢谢

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

情徒 2022-09-18 19:01:27

你这 limit设置的太小了,url-loader没办法把图片转为base64格式的。你要么不设置limit,要么安装file-loader,让file-loader帮你解决路径问题。

挽心 2022-09-18 19:01:27

打包完之后你样式中的url路径,是相对于入口HTML页面的,不是相对于css文件的。使用file-loader解析项目中的url

迷荒 2022-09-18 19:01:27

解决

devServer: {
      open:true,
      publicPath:'/'
      contentBase: path.resolve(__dirname, 'dist')
    },

没有测试过,如果能解决再说原因~~~

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文