今天调试yii2自带的swift mailer发邮件,开始调试时,发送用的send()方法始终返回true,但是就是没有收到邮件,很是纳闷,于是开始了半个晚上的调试之旅,我把调试过程发出来,希望后面的小伙伴能少走一些弯路。首先,根据热心网友的文章,配置邮箱的基础信息,我用的base项目,所以我的配置文件是web.php,配置内容为: ‘mailer’ => [ ‘class’ => ‘yii\swiftmailer\Mailer’, ‘transport’ => [ ‘class’ => ‘Swift_SmtpTransport’, ‘host’ […]
一、压缩JS的好处: 1、减小了文件的体积 2、减小了网络传输量和带宽占用 3、减小了服务器的处理的压力 4、提高了页面的渲染显示的速度 二、压缩JS的方法如下: 1、首先在本地安装node.js和npm,一般npm集成于nodejs,即安装nodejs,同时也安装了npm。 2、安装uglify插件。在cmd命令行执行: 3、开始压缩js文件。 首先在命令行,进入JS文件所在目录。 然后执行压缩文件命令:uglifyjs pdf.js -o pdf.min.js 我要压缩的文件为pdf.js,生成的压缩文件名为pdf.min.js。-o是一个参数,关于参数的具体解析大家可以去官网看,https://www.npmjs.com/package/uglify-js。最后看一看压缩的结果: 可以看到文件由719KB,被压缩到了536KB。 三、批量压缩方法: 1)新建txt文件,内容如下 @echo off :: 设置压缩JS文件的根目录,脚本会自动按树层次查找和压缩所有的JS(注意路劲中不能有空格) SET JSFOLDER=D:\uglifyDestination echo 正在查找JS文件 chdir /d for /r . @echo 正在压缩 uglifyjs ) echo 完成! pause & exit 2)另存为.bat文件 3)将需要压缩的js文件放置目录 […]
目录 效果图 思考 实现思路 具体代码实现 效果图 思考 移动端的场景里经常会出现环形进度条的功能,在实现这个功能前,我预想的解决方案大致有: echarts、antv、canvas、svg 前面两种第三方提供的解决方案当然是简单,拿到案例修整一下即可,但是需要下载依赖,而且代码量不小。有没有不需要依赖第三方包,采用原生的写法,独立封装成一个组件,降低耦合,而且性能优越? 当然,那就主要介绍canvas的使用 实现思路 可以展示整个圆、半圆以及任意角度弧形(左右对称)的进度条。整体思路如下: 1.先确定展示的形状,是整个圆、半圆还是一般的弧形 2.把确定好形状的圆弧均分100等份,计算出每一份所占的弧度 3.灰色圆弧占100份,红色圆弧最终占的份数由参数确定 4.设置setInterval定时器,重复执行画图操作 清空画布 先画灰色的圆弧,占100份 再画红色的圆弧:红色圆弧的份数从0开始,每次加1 画红色圆弧末端的红色圆:难点在于根据角度确定红色圆的圆心,这里面涉及到三角函数,在草稿纸上画个图就大致明白了 当红色圆弧的份数达到指定值(传的参数)的时候,清除定时器 具体代码实现 关于动画部分,可以使用requestAnimationFrame做优化,函数改写如下: