会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
风雨后见彩虹
无论什么时候开始,重要的是不要停止
博客园
首页
联系
订阅
管理
上一页
1
2
3
4
5
6
7
···
16
下一页
2021年7月12日
【笔记】理解CSS3之Flexbox布局
摘要: 前言 先看一个例子,html代码如下: <ul> <li>1</li> <li>2</li> <li>3</li> </ul> CSS样式如下: html,body,ul,li { padding: 0; margin: 0; } ul { display: flex; list-style: no
阅读全文
posted @ 2021-07-12 09:21 风雨后见彩虹
阅读(229)
评论(0)
推荐(1)
2021年5月14日
如何处理前端异常监控?
摘要: 为什么要进行异常处理? 很多异常是不可控的,比如资源加载异常,ajax请求异常等,会影响最终的呈现效果,做好异常处理,有大致以下几点好处: 1.增强用户体验; 2.快速定位问题原因,及时发现问题。特别是移动端,机型、系统等不一样,有了异常处理并上报,定位快; 3.完善前端监控系统方案。 需要处理哪些
阅读全文
posted @ 2021-05-14 22:45 风雨后见彩虹
阅读(1173)
评论(0)
推荐(0)
2021年5月8日
【效果】使用canvas rotate实现一个旋转的矩形
摘要: 使用canvas rotate实现一个旋转的矩形,并且以矩形的中心为原点,围绕原点旋转: <canvas id="canvas" width="800" height="400"></canvas> <script type="text/javascript"> var canvas = docum
阅读全文
posted @ 2021-05-08 21:51 风雨后见彩虹
阅读(1814)
评论(0)
推荐(0)
2021年4月30日
小tips:微信小程序登录后返回登录前的页面继续操作(保留参数)
摘要: 在app.js中添加如下两个方法即可: // 设置需要回调的地址 setCallbackUrl: function(mode) { return new Promise((resolve,reject) => { let pages = getCurrentPages(); //获取加载的页面 le
阅读全文
posted @ 2021-04-30 17:13 风雨后见彩虹
阅读(3095)
评论(0)
推荐(0)
2021年4月6日
nginx的常用配置
摘要: nginx通用配置 http { # nginx负载均衡配置 upstream dynamic_balance { #ip_hash; server 192.168.100.123: 8081; } # 省略其他 server { listen 80; server_name localhost;
阅读全文
posted @ 2021-04-06 09:06 风雨后见彩虹
阅读(249)
评论(0)
推荐(0)
2021年3月30日
vue-router的History 模式常用的三种配置方式(去掉地址栏中的#号)
摘要: 第一种:nginx配置 conf主要的配置代码: http { # nginx负载均衡配置 upstream dynamic_balance { #ip_hash; server 192.168.100.123: 8081; } # 省略其他 server { listen 80; server_n
阅读全文
posted @ 2021-03-30 09:17 风雨后见彩虹
阅读(1912)
评论(0)
推荐(0)
2021年3月29日
web前端常用的五种方式搭建本地静态html页面服务器
摘要: 方式一:live-server live-server是一款npm工具,可以在项目目录启动一个node服务,然后直接在浏览器中预览,并且自动全局监听实时更新。 两种安装方式: 全局安装 npm i live-server -g 本地安装 npm i live-server --save-dev 直接
阅读全文
posted @ 2021-03-29 09:09 风雨后见彩虹
阅读(12971)
评论(0)
推荐(0)
2021年3月13日
小tips:nodejs请求接口超时使用中间件connect-timeout实现自动超时机制
摘要: 如果在请求中不设置超时时间,那么一直处理loading卡屏状态,使用connect-timeout来设置自动超时时间。 安装: npm install connect-timeout -S 如下例子: var timeout = require("connect-timeout"); app.use
阅读全文
posted @ 2021-03-13 10:06 风雨后见彩虹
阅读(1440)
评论(0)
推荐(0)
2021年3月9日
小tips:tomcat下JSP页面引用css、js等资源路径404问题
摘要: 在JSP页面头部添加如下代码: <% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.get
阅读全文
posted @ 2021-03-09 18:33 风雨后见彩虹
阅读(652)
评论(0)
推荐(1)
2021年3月5日
原生JavaScript实现一个简单的Promise构造函数示例
摘要: 下面demo示例,只支持实例的then和catch,代码如下: function PromiseDiffer(fn){ var self = this; this.status = 'pendding'; this.value = undefined; this.reason = null; fun
阅读全文
posted @ 2021-03-05 09:19 风雨后见彩虹
阅读(328)
评论(0)
推荐(1)
2021年2月27日
canvas图片旋转扩展出原生JS实现移动端横竖屏手写签名示例
摘要: 前提知识 canvas是提供了各种各样的接口去控制画布,比如旋转rotate方法。 这里的旋转并不是真的把这个画布旋转了,例如ctx.rotate(90 * Math.PI / 180)顺时针旋转90°了,并不是说我们在页面上就会看到canvas旋转了90°。我们可以理解为其实canvas是有两个部
阅读全文
posted @ 2021-02-27 10:07 风雨后见彩虹
阅读(2691)
评论(1)
推荐(0)
『面试题』WEB前端面试专题-Promise相关
摘要: 题目一 const promise = new Promise((resolve, reject) => { console.log(1); resolve(); console.log(2); }) promise.then(() => { console.log(3); }) console.l
阅读全文
posted @ 2021-02-27 09:59 风雨后见彩虹
阅读(620)
评论(0)
推荐(0)
2021年2月24日
『读书笔记』掘金小册-前端性能优化原理与实践
摘要: 前言 在展开性能优化的话题前,看一个常见的问题: 从输入 URL 到页面加载完成,发生了什么? 首先我们需要通过 DNS(域名解析系统)将 URL 解析为对应的 IP 地址,然后与这个 IP 地址确定的那台服务器建立起 TCP 网络连接,随后我们向服务端抛出我们的 HTTP 请求,服务端处理完我们
阅读全文
posted @ 2021-02-24 08:41 风雨后见彩虹
阅读(1869)
评论(0)
推荐(0)
2021年2月19日
小tips:ECMA-262定义的7种错误类型
摘要: 七种错误类型如下: Error EvalError RangeError ReferenceError SyntaxError TypeError URIError 其中,Error是基类型(其他六种类型的父类型),其他类型继承自它。Error类型很少见,一般由浏览器抛出的。这个基类型主要用于开发人
阅读全文
posted @ 2021-02-19 20:38 风雨后见彩虹
阅读(175)
评论(0)
推荐(0)
ES6之常用开发知识点:字符串的扩展与正则表达式的扩展(三)
摘要: 字符串的扩展 codePointAt JavaScript 内部,字符以 UTF-16 的格式储存,每个字符固定为2个字节。对于那些需要4个字节储存的字符(Unicode 码点大于0xFFFF的字符),JavaScript 会认为它们是两个字符。 codePointAt方法是测试一个字符由两个字节还
阅读全文
posted @ 2021-02-19 20:37 风雨后见彩虹
阅读(169)
评论(0)
推荐(0)
ES6之常用开发知识点:let 和 const 命令详解(二)
摘要: let命令 基本用法 { let a = 10; var b = 1; } a // ReferenceError: a is not defined. b // 1 根据上面结果显示,let声明的变量只在它所在的代码块有效。 实例1: var a = []; for (var i = 0; i <
阅读全文
posted @ 2021-02-19 12:45 风雨后见彩虹
阅读(174)
评论(0)
推荐(0)
2021年2月18日
vuejs怎样封装一个插件(以封装vue-toast为例扩展)
摘要: 插件介绍 插件通常会为 Vue 添加全局功能。插件的范围没有限制——一般有下面几种: 1.添加全局方法或者属性,如: vue-custom-element 2.添加全局资源:指令/过滤器/过渡等,如 vue-touch 3.通过全局 mixin 方法添加一些组件选项,如: vue-router 4.
阅读全文
posted @ 2021-02-18 15:02 风雨后见彩虹
阅读(1319)
评论(0)
推荐(1)
2021年2月5日
【笔记】node常用方法(持续更新)
摘要: 1.path.basename(path[, ext]) path <string> ext <string> 可选的文件扩展名。 返回: <string> path.basename() 方法会返回 path 的最后一部分,类似于 Unix 的 basename 命令。 尾部的目录分隔符会被忽略,
阅读全文
posted @ 2021-02-05 22:53 风雨后见彩虹
阅读(290)
评论(0)
推荐(0)
webpack系列-webpack内置插件ProvidePlugin的应用(定义全局变量,例如vue引入jquery全局使用)
摘要: vue+webpack使用ProvidePlugin插件引入jquery 先看一个实例,webpack+vue引入jquery并全局使用,这儿指通过配置,不是在静态页面使用script标签直接引入jquery。 在webpack配置中跟module同级中添加plugins,代码如下: const w
阅读全文
posted @ 2021-02-05 21:15 风雨后见彩虹
阅读(2275)
评论(0)
推荐(1)
2021年2月4日
小tips:...运算符(展开运算符、剩余操作符)
摘要: 如下例子: 1. var set = new Set([1, 2, 3, 4, 4,4,4,4,2,2,2]) set=[...set] 2. let [head, ...tail] = [1, 2, 3, 4]; 3. let [x, y, ...z] = ['a']; 第一个叫做 展开运算符(s
阅读全文
posted @ 2021-02-04 17:45 风雨后见彩虹
阅读(312)
评论(0)
推荐(0)
2020年12月23日
小tips:使用JSON.parse(JSON.stringify(object))实现深拷贝的局限及扩展
摘要: 使用JSON.parse(JSON.stringify(object))实现深拷贝局限 大部分情况我们都可以使用JSON.parse(JSON.stringify(object))来实现深拷贝,但该方法也有局限性,如下: 会忽略 undefined 会忽略 symbol 不能序列化函数 不能解决循环
阅读全文
posted @ 2020-12-23 08:46 风雨后见彩虹
阅读(885)
评论(0)
推荐(0)
2020年11月20日
小tips:xml文件转为html表格展示示例
摘要: books.xml文件格式如下: <?xml version="1.0" encoding="UTF-8"?> <xbrl xmlns="http://www.xbrl.org/2003/instance" xmlns:cfid-common="http://eid.csrc.gov.cn/cn/f
阅读全文
posted @ 2020-11-20 09:01 风雨后见彩虹
阅读(589)
评论(0)
推荐(0)
2020年11月19日
小tips:postMessage处理iframe跨域通信
摘要: 实例 父页面发消息给子页面,子页面接收消息后回复父页面。 父页面代码: <body> 父级页面: <button id="btn">给iframe子页面传递消息button</button> <iframe src="index2.html" id="iframe1"></iframe> <scri
阅读全文
posted @ 2020-11-19 22:16 风雨后见彩虹
阅读(1244)
评论(0)
推荐(0)
2020年11月18日
小tips:vue结合百度UEditor富文本编辑器实现vue-ueditor-wrap
摘要: 1.下载vue-ueditor-wrap cnpm i vue-ueditor-wrap -S 下载最新的 UEditor 资源文件放入你项目的静态资源目录中(比如 static 或者 public,这取决于你项目的配置)。 2.引入VueUeditorWrap组件 import VueUedito
阅读全文
posted @ 2020-11-18 13:02 风雨后见彩虹
阅读(3487)
评论(0)
推荐(1)
2020年11月12日
给vue+element-ui动态设置主题色(包括外链样式、内联样式、行内样式)
摘要: 基本思路 实现思路:实现一个mixins混入的主题js即theme.js,注册到全局下。使用el-color-picker组件切换颜色的时候,把颜色值传递到根root下,在根实例下监听主题色的变化来更改页面的主题,然后所有具体的路由页面的主题色修改通过在APP.vue页面监听路由变化来调用改变主题色
阅读全文
posted @ 2020-11-12 08:48 风雨后见彩虹
阅读(9050)
评论(1)
推荐(0)
2020年11月10日
小tips:vue2中broadcast和dispatch的实现
摘要: /* * broadcast 事件广播 * @param {componentName} 组件名称 * @param {eventName} 事件名 * @param {params} 参数 * 遍历寻找所有子孙组件,假如子孙组件和componentName组件名称相同的话,则触发$emit的事件方
阅读全文
posted @ 2020-11-10 09:11 风雨后见彩虹
阅读(392)
评论(0)
推荐(0)
2020年11月9日
【基础知识】【转】彻底搞懂 async & defer
摘要: 普通 script 先来看一个普通的 script 标签。 <script src="a.js"></script> 浏览器会做如下处理 停止解析 document. 请求 a.js 执行 a.js 中的脚本 继续解析 document defer <script src="d.js" defer>
阅读全文
posted @ 2020-11-09 21:32 风雨后见彩虹
阅读(246)
评论(0)
推荐(0)
2020年11月2日
[JS设计模式]:鸭子类型与多态
摘要: 鸭子类型 编程语言按照数据类型大体可以分为两类,一类是静态类型语言,另一类是动态类型语言。 动态类型语言对变量类型的宽容给实际编码带来了很大的灵活性。由于无需进行类型检测,我们可以尝试调用任何对象的任意方法,而无需去考虑它原本是否被设计为拥有该方法。 这一切都建立在鸭子类型(duck typing)
阅读全文
posted @ 2020-11-02 12:44 风雨后见彩虹
阅读(716)
评论(0)
推荐(0)
小tips:CSS3中的background-clip属性(背景的裁剪区域)
摘要: CSS3中的background-clip属性,其主要是用来确定背景的裁剪区域,换句话说,就是如何控制元素背景显示区域。 语法如下: background-clip : border-box || padding-box || content-box 取值说明: border-box:此值为默认值,
阅读全文
posted @ 2020-11-02 08:53 风雨后见彩虹
阅读(646)
评论(0)
推荐(0)
2020年10月13日
JS常见的API扩展形式(prototype、jquery、vue插件封装)以及怎样设计出易扩展的表单验证功能?
摘要: 常见的API扩展形式 prototype 比如我现在有一个需求,给定一个字符串,给方法传递一个参数为数字类型来确定当前字符串重复次数,例如: 'abc'.repeatStringNumTimes(3) // abcabcabc 如果按照一般的思维就是我们把这个方法绑定到String的原型上,如下代码
阅读全文
posted @ 2020-10-13 09:01 风雨后见彩虹
阅读(740)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
···
16
下一页
公告