前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >webpack打包原理入门探究(七)其他文件处理

webpack打包原理入门探究(七)其他文件处理

作者头像
公众号---人生代码
发布2020-06-11 10:39:20
4930
发布2020-06-11 10:39:20
举报
文章被收录于专栏:人生代码人生代码

接下来我么来处理图片文件

我们先在 src/assets/img/ken.png

在 src/components/layer/layer.scss 引入图片

代码语言:javascript
复制
.layer {
    height: 100px;
    width: 100px;
    background: url('../../assets/img/ken.png');
    color: #ffffff;
    display: flex;
    
}

现在直接 运行 npm run webpack.app

这时我们需要安装一些处理 图片的 loader

代码语言:javascript
复制
npm install file-loader image-loader url-loader --save-dev

再运行一遍 npm run webppack.app

我们发现已经将图片引入进来了

这个 file-loader 是处理 css样式中的 图片地址,index.html的图片地址相对路径没有问题,但是如果处理 组件中的 图片的相对路径是会有一些问题,需要借助 require()

代码语言:javascript
复制
<img :src="require('../src/bg.png')" />

我们再来处理一下打包之后存放的位置,需要配置一下 webpack.app.config.js

代码语言:javascript
复制
let path = require('path')
let htmlWebpackPlugin = require('html-webpack-plugin')
function resolve(o) {
    return path.resolve(__dirname, o)
}
module.exports = {
    entry: resolve('src/app.js'), // 指定入口文件
    output: {
        path: resolve('dist'),
        // filename: '[name]-[hash].js'
        filename: "js/[name].bundle.js",
        // publicPath: ''
    },
    module: {
        rules: [
            {
                test: /\.js$/,
                loader: 'babel-loader',
                exclude: resolve('node_modules'), //指定排除的范围,
                include: resolve('src')
            },
            {
                test: /\.html$/,
                loader: 'html-loader'
            },
            {
                test: /\.css$/,
                loader: 'style-loader!css-loader!postcss-loader'
            },
            {
                test: /\.scss$/,
                loader: 'style-loader!css-loader!postcss-loader!sass-loader'
            },
            {
                test: /\.less$/,
                loader: 'style-loader!css-loader!postcss-loader!less-loader'
            },
            {
                test: /\.(png|jpg|gif|svg)$/,
                loader: 'file-loader',
                query: {
                    name: "assets/img/[name].[hash].[ext]"
                }
            }
        ]
    },
    plugins: [
        new htmlWebpackPlugin({
            // filename: "index-[hash].html",
            // filename: 'index-[chunkhash].html',
            filename: "index.html", // 生成 dist/a.html
            template: 'index.html', // 指定根目录下的 index.html
            inject: 'body',
        })
    ]
}

运行 npm run webpack.app

嗯,今天图片处理就到此为止吧,接下来,来一篇总结吧。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-06-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 CryptoCode 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 接下来我么来处理图片文件
相关产品与服务
图片处理
图片处理(Image Processing,IP)是由腾讯云数据万象提供的丰富的图片处理服务,广泛应用于腾讯内部各产品。支持对腾讯云对象存储 COS 或第三方源的图片进行处理,提供基础处理能力(图片裁剪、转格式、缩放、打水印等)、图片瘦身能力(Guetzli 压缩、AVIF 转码压缩)、盲水印版权保护能力,同时支持先进的图像 AI 功能(图像增强、图像标签、图像评分、图像修复、商品抠图等),满足多种业务场景下的图片处理需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档