一.背景问题 项目中如果有大量的小图标,如果不使用阿里的iconfont.UI给一个加一个,加一个引用一个,每个图标虽然很小,但是也是一次请求,每次请求都是消耗性能资源的. 二.解决思路 使用webpack-spritesmith可以将所有的icon小图标整合成一张图片.每次都只会请求一次,同时还能自动生成定位样式,对于都是同尺寸的小图标,直接可以使用. 三.废话少说,直接来code 1.我是使用vue-cli3配置这个webapck的插件的.如果使用cli2的网上也很多,自行查找 2.查阅资料…
先执行install cnpm install webpack-spritesmith 文件位置 build\webpack.dev.conf.js 添加内容: const SpritesmithPlugin = require('webpack-spritesmith'); 找到 文件内 plugins: 我是生成less文件后,单位rem实现雪碧图的响应式适配,用的是阿里方案页面内需引用flexbile.min.js(参考阿里手淘适配) 目录结构: 添加如下内容: 文件位置: build\w…
一.安装nodejs之后,要设置两个环境变量 在 计算机右击属性---高级系统设置---高级---环境变量 打开窗口 新建2个环境变量,它们的值分别是nodejs根目录下的node_modules路径 及npm的路径 1.变量:NODE_PATH  值:D:\www\nodejs\node_modules 2.变量:PATH 值:D:\www\nodejs\npm 二.进入images上一层目录,运行 npm install gulp gulp-sass gulp-imagemin gulp.s…
1.通过命令新建一个vue项目 环境要求: 安装有 Node.js. vue. vue-cli . 创建项目: vue init webpack tx_demo cd tx_demo 进入项目,下载依赖: // 最新版已经无需安装依赖初始化,可直接运行下面的命令 npm install 或者 cnpm install 运行项目: npm run dev 2.由于我用的是sass样式,所以安装sass依赖 npm install node-sass sass-loader 3.配置雪碧图功能 先安…
在前端项目中,为了减少对图片的请求次数,一般而言需要进行雪碧图的配置.即将多张小图标合并成一张图片,这样页面中的小图标都在一张图片上,只需请求一张图片,就可以通过CSS设置各个小图标的显示,利于节省带宽和资源. 雪碧图插件一般还支持快速引用小图标,例如当我们需要在html中放入service.png这张图片时,我们只需要使用<i class="icon icon-service"></i>这样的简单引入方式,省去了繁琐的引入图片的样式编写,大大提升效率. 在Vu…
一.配置eslint module.exports={ "printWidth": 240, //一行的字符数,如果超过会进行换行,默认为80 "tabWidth": 2, //一个tab代表几个空格数,默认为80 "useTabs": false, //是否使用tab进行缩进,默认为false,表示用空格进行缩减 "singleQuote": true, //字符串是否使用单引号,默认为false,使用双引号 "s…
1.先安装插件 npm install --save-dev webpack-spritesmith 2.配置webpack 配置之前 先引入var SpritesmithPlugin = require('webpack-spritesmith'); 在webpack.config.js的插件里面写(plugins) new SpritesmithPlugin({ // 目标小图标,这里就是你要生成的图片的目录 src: { cwd: path.resolve(__dirname, './sr…
因为工作需要要将五六十张逐帧图拼成雪碧图,网上想找到一件制作工具半天没有找到,就自己用canvas写了一个. 写成之后就再没有什么机会使用了,因此希望有人使用的时候如果遇到bug了能及时反馈给我. 最近用vue2 + webpack重新构建了下,代码量挺简洁的,逻辑也很简单,适合新手看看,顺便求几个star 项目名称: FrameSpriteMaker 简称 FSM github项目地址:https://github.com/pspgbhu/FrameSpriteMaker-vue…
最近一直在做移动端的改版项目,做之前老大就跟我说了好几次,说这次改版一定要用雪碧图减少一个页面的图片的请求次数,能加快页面的加载速度就一定要加快,我说可以.因为之前的项目开发时间过短,也没有时间去慢慢实现雪碧图,所以就一直没有做这样的一个功能,但这次时间较为充分,于是就开始着手做雪碧图.做之前呢,首先想到的就是用PS将所有的小图放在一张大图上,可那么多的小图,一张一张往上放,岂不累趴,而且你还没有办法去确切的计算整张雪碧图的宽高,这不搞死人吗?于是就上网查资料,然后就有了本文很简单的生成雪碧图的…
//vue.config.js const path = require("path"); const SpritesmithPlugin = require("webpack-spritesmith"); //引入雪碧图 module.exports = { // 请求基本路径(是否在根目录下) baseUrl: "process.env.NODE_ENV" === "production" ? "/"…