自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MichaelAn的博客

Write less, do more!

  • 博客(910)
  • 资源 (2)
  • 收藏
  • 关注

原创 CSS-界面滚动时不显示滚动条

最近产品提出一个需求,在界面滚动时,元素右侧不显示滚动条。查了网上的答案,最后总结了一下几个情况。1、设置常规的滚动条:使用 overflow:auto。父元素需要设置一个高度,设置相对定位,这样子元素的高度大于父元素高度才能显示滚动条。如果父元素的高度完全由子元素撑开,界面上不会出现滚动条。设置overflow:auto 失效的主要问题:可能是这个div没有设置 100% 然后父元素清除浮动......

2019-03-17 17:43:47 64333 7

原创 React中loading界面处理

前几周,boss给出一个任务:在网站页面加载前设置一个loading界面。设置loading界面,如果用户网络状况一般,或者用户执行请求操作频繁,可以让用户减少等待时间,有利于提升用户体验。那么具体怎样实现loading界面呢?查询资料进行实践,得出下面几个方案:方案一:在react框架中,根据组件的生命周期,在componentdidmount进行判断。在render中进行判断:当用...

2018-08-19 13:04:18 25554

原创 Cannot read property innerHTML of null 报错信息

Cannot read property 'innerHTML' of null ——这个报错的字面含义是:不能读取空的内部HTML。这个报错是一个初学者的问题。实际上,在页面的HTML结构中,innerHTML是有实际的值并可以在console进行获取查询到。问题:script中关于DOM部分放在和body标签前。根据浏览器的渲染原理,HTML代码从上到下执行代码,当浏览器JS解析器...

2018-07-20 09:29:19 24203 4

原创 最全面计算机英语单词列表(一)

作为一名开发者,不管是自己写代码还是阅读英文文档,英语水平对于开发进度有很大的影响。业余时间简单整理了计算机开发中常见的英语单词(不限于前端开发),再此和朋友们分享。单词较多,为了阅读体验良好分成几个部分。1.file,n.文件;v.保存文件[faɪl]2.command,n.命令,指令[kəˈmænd]3.use,v.使用,用途[jus]4.program,n.程序[ˈproʊgræm]5.li...

2018-07-15 07:46:01 53258 30

原创 Web前端开发标准规范总结

Web前端作为开发团队中不可或缺的一部分,需要按照相关规定进行合理编写(一部分不良习惯可能给自己和他人造成不必要的麻烦)。不同公司不同团队具有不同的规范和文档。下面是根据不同企业和团队的要求进行全面详细的整理结果。备注:实际开发请以本公司的规范为标准。A.基本原则符合web标准(UTF-8,HTML5),语义化html(HTML5新增要求,减少div和span等无特定语义的标签使用),结构表现行为...

2018-07-15 07:32:40 34226 1

原创 Starting the development server 报错和解决

最近某个项目开发环境升级后,运行 npm start 后无法启动项目,终端始终显示 Starting the development server…,浏览器 localhost: 3000 界面显示空白。错误截图。

2024-04-12 20:13:17 695

原创 Accessibility 无障碍支持

Web 无障碍涉及确保内容保持无障碍,无论访问 web 的人员或方式。任何用户都可以使用其所有的功能和内容,特别是有身体或精神障碍的用户。键盘鼠标和触摸屏用户,以及用户访问网络的任何其他方式,包括屏幕阅读器,都能够访问网站。无论人们的听觉、视觉、身体或认知能力如何,应用程序都应该是可以理解和使用的。网站也不应该造成伤害:像动画这样的 web 特性会导致偏头痛或癫痫发作。国外网站中基本支持无障碍,我测试 MDN github airtable 等网站都支持比较好。

2024-03-06 14:03:23 893 1

原创 前端网页设计颜色使用原则

在视觉展现上能够用尽量少的样式去实现设计目的,避免毫无意义的使用大量颜色强调视觉重点或对比关系。少即是多: 在视觉展现上能够用尽量少的样式去实现设计目的。避免毫无意义的使用大量字阶、颜色、字重强调视觉重点或对比关系。例如 bootstrap 官方案例,配色简单明确,重点突出。

2024-03-06 13:48:11 898

原创 一次前端优化网络请求次数案例

最近线上遇到一个实际问题,当用户点击切换 tab 时,界面某个请求就会特别多。经排查,这个请求不需要在每一个 tab 点击时发送(获取通知列表),现在频繁发送性能比较差,需要改成只发送一次请求。

2024-01-26 14:56:21 426 1

原创 pdfjs 打印空白页

最近遇到一个问题,前端使用 pdfjs 预览 PDF 文件时,在浏览器中执行打印,谷歌浏览器最后一页会出现空白。如下图所示。在火狐浏览器和 Safari 中是正常的,初步判断是某个代码兼容性问题。

2024-01-09 11:57:45 460

原创 ReferenceError primordials is not defined 报错和解决

今天使用一个老项目(2020年前)时,执行报错,显示如下刚开始以为是网络问题,或者是第三方库冲突,尝试切换网络问题还存在,查资料如下。primordials isnot defined

2023-11-02 11:16:58 1415 4

原创 Warning: React.createElement: type is invalid -- expected a string (for built-in components)

Warning: React.createElement: type is invalid – expected a string (for built-in components) or a class/function (for composite components) but got: object。中文就是:React 框架创建元素时,类型不合法。今天开发时,一个稳定的功能出现了下面的报错。

2023-09-08 13:36:31 1532

原创 如何快速修复 NPM audit 安全问题

问题描述:一个老前端项目中,npm audit 反馈 Dependencies 中反馈了不少安全问题,有很多的 high 或者 critical 问题需要修复。项目简介:大约是5年前的项目,react 版本是 16, webpack 是 3 版本,axios 是 0.x 版本。当时使用 create-react-app 初始化项目,后期经过 npm eject 暴露了配置并更改过。现在5年过去了,这些第三方库很多存在安全问题需要修复。

2023-08-30 17:41:22 423

原创 JS input 在 Android 中无法打开相机的问题

最近项目中,前端和安卓协同开发,安卓端把 JS 前端项目,直接打包嵌入到安卓应用中,安卓的同事反馈,无法打开安卓的相机进行拍照。如果是 iOS 或者移动端浏览器中,可以打开相机并进行拍照。具体的代码如下,我使用 React JSX 语法,其中 input 输入图片。

2023-08-22 14:22:31 521

原创 前端数据兼容性及解决

最近经常遇到新老数据兼容性的问题:某个数据或者字段,存储在服务器上,版本迭代后,数据类型变化,前端需要兼容已有的数据类型。后端返回的数据中,有这些情况,那么前端使用时,需要兼容这多个版本的数据。也可以写一个 model user 类处理属性,优化代码,代码如下。例如第一版中,包括了姓名(字符串),年龄(数字),性别(布尔值)最好的解决办法,还是在初期设计考虑各种情况,考虑后续的兼容性。产品改了需求,针对国外用户,姓名改成了姓,名两个字段。

2023-03-30 13:55:48 212 2

原创 JS Bridge 实现前端和安卓通信

现在很多开发都是 hybrid 混合式开发,也就是一套代码,同时实现 web Android ios 开发。那么需要 JS 调用原生 Java android 的接口,或者 Java 调用 JS 的方法。JS bridge 是实现的方案之一,例如 react native。小程序比较特殊,也是 JS 调用原生环境的 API。

2023-03-30 13:50:35 408

原创 DH 密钥交换算法

DH 算法(Diffie-Hellman) 是一种密钥交换协议,它可以让双方在不泄漏密钥的情况下协商出一个密钥来。

2023-03-30 13:49:29 822

原创 NodeJS

NodeJS进程与线程是一个程序员的必知概念,面试经常被问及,但是一些文章内容只是讲讲理论知识,可能一些小伙伴并没有真的理解,在实际开发中应用也比较少。本篇文章除了介绍概念,通过Node.js 的角度讲解进程与线程,并且讲解一些在项目中的实战的应用,让你不仅能迎战面试官还可以在实战中完美应用。作者简介:koala...

2023-02-13 18:00:53 291

原创 图解SSL/TLS协议

图解SSL/TLS协议本周,CloudFlare宣布,开始提供Keyless服务,即你把网站放到它们的CDN上,不用提供自己的私钥,也能使用SSL加密链接。我看了CloudFlare的说明(这里和这里),突然意识到这是绝好的例子,可以用来说明SSL/TLS协议的运行机制。它配有插图,很容易看懂。下面,我就用这...

2023-02-13 17:43:03 119

原创 Symbol

Symbol介绍ES5 的对象属性名都是字符串,这容易造成属性名的冲突。比如,你使用了一个他人提供的对象,但又想为这个对象添加新的方法(mixin 模式),新方法的名字就有可能与现有方法产生冲突。如果有一种机制,保证每个属性的名字都是独一无二的就好了,这样就从根本上防止属性名的冲突。这就是 ES6 引入Symbo...

2023-02-13 17:42:54 93

原创 你靠哪些讲解学会了曾经怎么也学不会的算法?

你靠哪些讲解学会了曾经怎么也学不会的算法?====分割线====1.快速排序(noip2016初赛)2.后缀数组(2009国家集训队论文)3.FFT (某个福建省的课件,内容为miskcoo的blog)4.生成函数(某个名为polynomial的课件)5.KD-Tree(2018.1 yali集训)还有...

2023-02-13 17:42:39 143

原创 Chrome浏览器的用法

Chrome浏览器的用法快捷键Ctrl+N Opens a new window.Ctrl+T Opens a new tab.Press Ctrl+O, then select file. Opens a file from your computer in Google Chrome....

2023-02-13 17:42:37 218

原创 CDN

CDNCDNCDN 定义内容分发网络 content delivery network概况:设置多个节点服务器,分布在不同区域中,便于用户进行数据传递和访问。当某一个节点出现问题时,通过其他节点仍然可以完成数据传输工作,可以提高用户访问网站的响应速度。“分布式存储”:将中心平台的内容分发到各地的边缘服...

2023-02-13 17:42:26 79

原创 程序员如何利用周末提高自己?

程序员如何利用周末提高自己?第一篇我是一名javascript程序员,刚刚毕业几个月,初步的适应了程序员的工作环境,可是越是工作越认识到了自己的不足之处,而周末在宿舍呆的很无聊,希望把周末的时间利用起来让自己更快的成长起来。让自己能在同样毕业的同事中脱颖而出呢我们这个行业,有非常多聪明又愿意拼搏的年轻人了作为工...

2023-02-13 17:42:04 90

原创 Tips On Prioritizing Tech Debt In A Healthy Way

Tips On Prioritizing Tech Debt In A Healthy WayTable Of ContentsThe myth of the two backlogsDon’t make tech debt a blame game.How to discuss tech debtPri...

2023-02-13 17:41:40 78

原创 Docker basic

Docker basic参考链接:https://www.runoob.com/docker/docker-tutorial.htmlDocker 用途将应用和依赖环境打包到一个容器中(使用直接拉取镜像,不需要考虑依赖安装兼容性等问题)支持自动化测试发布等。主要后端和运维使用,前端简单了解使用方法。需要懂基...

2023-02-13 17:41:33 72

原创 09-Node.js Buffer(缓冲区)-20210712

09-Node.js Buffer(缓冲区)-20210712JavaScript 语言自身只有字符串数据类型,没有二进制数据类型。但在处理像TCP流或文件流时,必须使用到二进制数据。因此在 Node.js中,定义了一个 Buffer 类,该类用来创建一个专门存放二进制数据的缓存区。在 Node.js 中,Bu...

2023-02-13 17:41:31 80

原创 高效读源码

高效读源码如何高效阅读开源项目的源码解答一0、了解项目的技术背景我默认你是知道你要看的开源项目是干嘛的,比如 RocketMQ 是消息队列,消息队列是干嘛的你应该先知道。我也默认你用过这个开源项目,业务上没用过自己私下也要先用用,了解简单功能怎么用,让它先跑起来。如果是内部的项目,直接看项目文档。了解项...

2023-02-13 17:41:26 215

原创 Node.js Express 框架

Node.js Express 框架Express 简介Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP 工具。使用 Express 可以快速地搭建一个完整功能的网站。Express 框架核心特性:可以设置中间件来响...

2023-02-13 17:41:23 81

原创 Node.js JXcore 打包

Node.js JXcore 打包Node.js 是一个开放源代码、跨平台的、用于服务器端和网络应用的运行环境。JXcore 是一个支持多线程的 Node.js 发行版本,基本不需要对你现有的代码做任何改动就可以直接线程安全地以多线程运行。这篇文章主要是要向大家介绍 JXcore 的打包功能。JXcore ...

2023-02-13 17:41:20 83

原创 Node.js RESTful API

Node.js RESTful API什么是 REST?REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。表述性状态转移是一组架构约束条件和原则。满足这些约束条件和原则的...

2023-02-13 17:40:07 84

原创 window.onbeforeunload 的使用

window.onbeforeunload 的使用官方定义onbeforeunload 事件在即将离开当前页面(刷新或关闭)时触发。该事件可用于弹出对话框,提示用户是继续浏览页面还是离开当前页面。使用场合当我们界面中有未提交的表单,或者有未保存的文本内容,用户点击关闭按钮,需要浏览器弹出提示框,就需要使用这个...

2023-02-13 17:40:01 1486

原创 matplotlib

matplotlibMatplotlib: Visualization with Python(Matplotlib:使用 Python 进行可视化)菜鸟教程:https://www.runoob.com/numpy/numpy-matplotlib.html官方文档:https://matplotlib.or...

2023-02-13 17:39:27 54

原创 MkDocs 快速入门

MkDocs 快速入门2021-11-03本文选自 《了不起的Markdown》,作者:毕小烦MkDocs 是一个用 Python 开发的静态站点生成器工具,它可以非常简单快速的创建项目文档。MkDocs 的文档源码使用 Markdown 编写,配置文件使用 YAML 编写,可以一键编译成静态站点。很多开...

2023-02-13 17:39:15 732

原创 algre-note

algre-note算法笔记1 双指针算法使用条件:有序数组(无序数组先排序)。分类:快慢指针和对撞指针。对撞指针用于小船载人问题;快慢指针用于判断链表中是否有环,排序数组去重操作等。判断链表中是否有环,也可以使用对象唯一性判断;排序数组去重操作,可以使用一次循环,然后splice操作;或者使用对象...

2023-02-13 17:39:11 64

原创 实现优先队列

实现优先队列所谓优先队列,就是一种特殊的队列, 其底层使用堆的结构,使得每次添加或者删除,让队首元素始终是优先级最高的。关于优先级通过什么字段、按照什么样的比较方式来设定,可以由我们自己来决定。要实现优先队列,首先来实现一个堆的结构。关于堆的说明可能你以前没有接触过堆这种数据结构,但是其实是很简单的一种结构,...

2023-02-13 17:39:05 96

原创 一、Promise概念

第 71 - 80 题第 71 题: 实现一个字符串匹配算法,从长度为 n 的字符串 S 中,查找是否存在字符串 T,T 的长度是 m,若存在返回所在位置。解析:第 71 题// 因为 T 的 length 是一定的,所以在循环S的的时候 ,循环当前项 i 后面至少还有 T.length 个元素const f...

2023-02-13 17:39:03 286

原创 新鲜出炉的8月前端面试题

新鲜出炉的8月前端面试题原作者 白霸天 https://zhuanlan.zhihu.com/p/41479807编辑于 2018-08-08 11:32前言*最近参加了几场面试,积累了一些高频面试题,我把面试题分为两类一种是基础试题: 主要考察前端技基础是否扎实,是否能够将前端知识体系串联。一种是开放式...

2023-02-13 17:39:00 55

原创 大厂面试题第二部分

大厂面试题第二部分https://github.com/Advanced-Frontend/Daily-Interview-Question/blob/master/datum/summary.md第 31 - 40 题第 30 题:两个数组合并成一个数组请把两个数组 [‘A1’, ‘A2’, ‘B1’, ‘...

2023-02-13 17:38:57 1294

原创 工程

工程掌握了 TypeScript 的语法就像学会了砌墙的工艺。我们学习 TypeScript 的目的不是为了造一间小茅屋,而是为了造高楼大厦,这也正是 TypeScript 的类型系统带来的优势。那么一项大工程应该如何开展呢?本部分的内容就会介绍 TypeScript 工程化的最佳实践,具体内容包括:代码检...

2023-02-13 17:38:43 50

Super Mario.zip

这部分代码是 JavaScript 实现超级玛丽,主要为 HTML css Javascript 文件和相关说明文档。

2019-08-21

react生命周期函数图解

React中重要的部分就是生命周期函数。与其他框架不同,React的生命周期函数不同阶段支持不同的状态和属性变化,从而进行重新渲染。不同周期执行不同的函数对于整个开发过程很重要。

2018-10-09

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除