自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

李刚的学习专栏

乐观、勇气、专注、果断、好奇、公正、慎思、真诚、追求极致追求完美、诚信!危机感,周围环境或他人给你危机感,你就真危机了!空有担忧,没有规划。明天总是一个可被消费的资产,危机感就没有那么强烈,焦虑反而更强烈,于是一晃一年就过去了。

  • 博客(359)
  • 资源 (4)
  • 收藏
  • 关注

原创 Git汇总--版本库操作

版本库操作日志–log显示提交历史! 当不使用任何参数调用,相当于使用了缺省的参数HEAD,即显示当前HEAD能够访问到的所有历史提交。可以指定某个远程或者分支进行查看:$ git log upstream/master参数说明--oneline最精简的日志输出--graph分支图显示-<n>显示最近的几条日志--stat显示每次...

2018-12-04 22:36:35 2851 1

原创 Git汇总--对象及版本库存储

下述内容为团队内部分享整理所得,实用性较强,整体性偏差!PS:关于完整的Git内容,请参照之前发表过一系列文章,详见:Git Pro深入浅出(一)、Git Pro深入浅出(二)、Git Pro深入浅出(三)推荐两个地址:ProGit、GotGit阅读完内容,你会很快的解决下面问题,并了解其底层原理。问题1:如何丢弃本地工作区修改的内容?$ git checkout -- <fi...

2018-12-04 22:28:26 2710 1

原创 HTTP缓存知道这些就够了

随着用户访问量越来越大,缓存变得越来越重要。HTTP文件缓存可以减少冗余数据的传输;缓解网络瓶颈;降低对原始服务器的请求;以及降低距离延迟。命中和未命中有了缓存,就可以保留第一条服务器响应的副本,后继请求就可以有缓存的副本来应对了。可以用已有的副本为某些达到缓存的请求提供服务,这些被称为缓存命中(cache hit)。HTTP没有为用户提供一种手段来区分响应是否缓存命中的,还是访问原始服务器得到的。

2017-07-03 10:13:30 2250 1

原创 定时任务高效触发

圆通处事,方能达到目的!开发中我们经常会遇到一些需要定时来解决的业务场景。比如,有这样一个需求:“如果连续30s没有请求包(例如登录,消息,keepalive包),服务端就要将这个用户的状态置为离线”。轮询处理、定时处理、环形队列处理。

2017-06-04 15:44:22 5837 3

原创 如何构建自己的技术博客

拥有自己的技术博客,不仅可以提升自己的技术能力,还可以提升自己的影响力,未来也可能带来一些“睡后”收益。对于我们职场人来说,拥有自己的技术博客一方面可以总结沉淀自己所学内容,同时也是一个不错的加分项。Vuepress 以 Markdown 为中心的项目结构,可以专注于写作,同时结合 Github 提供的用于搭建个人网站的静态站点托管服务。

2023-08-31 18:39:36 126

原创 从SVG到Canvas:选择最适合你的Web图形技术

SVG 和 Canvas 都是可以在 Web 浏览器中绘制图形的技术。众所周知, icon 通常使用 svg(如 iconfont),而交互式游戏采用 Canvas。二者具体的区别是什么?该如何选择?

2023-08-21 18:05:16 356

原创 三款快速删除未使用CSS代码的工具

针对历史项目或项目中有引入CSS框架(如Bootstrap),可能会存在大量的 CSS 样式未被使用。这可能产生一些不良的影响,如: 增加额外加载时间、可维护性下降。推荐PurgeCSS、UnCSS、PurifyCSS三款工具,自动去除未使用CSS代码。

2023-08-11 18:00:28 199

原创 URL存储解锁数据管理的新思路,重新定义数据传输与共享(@vue/repl)

通过 URL 存储最大的便利是:无需服务端且通过URL可以分享。好的技术方案一定是根据场景来的!且通过阅读源码,我们可以获取到一写比较不错且小巧的开源库,如上述的 fflate。

2023-07-31 16:41:46 973

原创 【揭秘Vue核心】为什么不建议在 v-for 指令中使用 index 作为 key,让你秒懂!

在没有 key 的情况下,Vue 将使用一种最小化元素移动的算法,并尽可能地就地更新/复用相同类型的元素。如果传了 key,则将根据 key 的变化顺序来重新排列元素,并且将始终移除/销毁 key 已经不存在的元素。虚拟DOM在比较元素的时候,因为DOM上的key等属性均未发生变化,所以其自身和内部的input均被复用了。所以,在实际开发过程中不要把 index 作为 key 值。

2023-07-17 11:05:01 148

原创 深入了解 CSS 变量,让 CSS 创造更多可能!

日常开发中所说的 CSS 变量,实际上是 CSS 的变量函数 var() 与 CSS 自定义属性的统称。使得开发和维护成本更低了,如让整个网站的换肤变得更容易;改变了在图形交互效果的实现中 JavaScript 的占据比重,使得开发门槛降低了,体验升级了。使自定义语法的扩展成为可能。

2023-07-11 22:18:30 348

原创 【揭秘Vue核心】深入解析Object.defineProperty和Proxy的区别,让你秒懂!

proxy和Object.defineProperty是用于实现响应式数据的两种不同方式。Object.defineProperty 通过直接修改对象的属性描述符来实现数据的劫持。Vue2.x中就是通过此来实现数据的响应式。但有一些限制,如只能劫持已经存在的属性,无法对新增属性或删除属性进行劫持。这就导致Vue 2.x需要在创建实例之前声明数据属性,否则无法实现响应式。而Vue 3.0使用了Proxy,它是ES6新增的特性。可以对整个对象进行劫持,包括对新增属性和删除属性的劫持。可以更加灵活地监听和代理。

2023-07-05 16:32:38 225

原创 CSS新特性,提升开发效率与视觉表现,必读!

CSS2.1中的CSS属性的设计初衷是图文展示,所以并没有专门与布局相关的CSS属性。因此,在CSS2.1中出现了很多奇怪的现象,如float属性,设计之初是为了文字环绕效果,最后居然成了布局中常用的属性。CSS2.1从2002开开始制定,到2011年成为规范,花费了10年。CSS3.0及以后版本,为了加速CSS标准化,将 CSS 划分为更小的组件,称之为模块。模块之间互相独立,按照各自速度走镖标准化。下面列举一些在开发中可以经常用到,且节省大量代码及提升效率的CSS新特性:

2023-07-04 11:42:31 526

原创 掌握这些vue内容,让你在提升代码复用上不再纠结!

前端工程化的最终目的都是为了能够更好地维护代码。代码复用是提升效率和可维护性的利器。vue 中针对不同场景和业务情况,提供了各种方式。全面了解这些内容,可以在开发过程中让你得心应手!1. 组件:主要的构建模块;2. 组合式函数:侧重于有状态的逻辑;3. 自定义指令:重用涉及普通元素的底层 DOM 访问的逻辑;4. 插件:添加全局功能的工具代码。

2023-06-28 18:59:40 366

原创 掌握这些容易被忽略的Vue组件细节,提升开发效率,事半功倍!

组件允许我们将 UI 划分为独立的、可重用的部分,并且可以对每个部分进行单独的思考。组件在日常开发的重要性不言而喻,掌握这些细则,可以让你在开发中事半功倍!

2023-06-27 18:49:13 343

原创 掌握这些容易被忽略的Vue细节,轻松排查问题,省时省力!

掌握这些容易被忽略的Vue细节,轻松排查问题,省时省力!

2023-06-25 22:40:53 313

原创 我心中的TOP1编程语言—JavaScript

个人认为 JavaScript 是一个功能强大、易于学习上手的编程语言。特别对于新手,JavaScript 无疑是最适合的编程语言之一。在未来,JavaScript 的应用场景必将不断扩展,这也将提高其在商业和工业领域的应用广度,相信 JavaScript 将会更加强大!

2023-06-25 17:45:52 5259 4

原创 职场求生记|唐朝打工人如何绝地求生

作为“见微”系列神作,其在微信读书总榜的第一名位置持续一段时间了,其讲述的内容和每个人都息息相关,更是能引起职场人的无限共鸣,值得深思。

2023-06-23 18:42:01 105

原创 发明专利公开 -- 一种基于 JSON 文件 + Http Header 的支持多项目、多分支、多人协同的 Api Mock/代理 工具

现阶段主流的前后端分离的开发模式下:前后端采用并行开发方式,在前端开发过程中通常需要依附于共同约定的接口格式及数据。该过程是一个并行过程,因此 Api Mock 模拟接口的返回变成了必要。同时,联调过程中,修改后端服务地址进行联调也是必要的。现公布团队的解决方案,也是团队 21 年专利的一项内容(专利公布号:CN113630468A)。

2023-05-30 16:17:25 1151

原创 生死疲劳|因为此书莫言获得诺贝尔奖

虽然本书长达39万字,但阅读过程却是无比的酣畅,因为莫言太会讲故事了!历经六世的生死轮回,三代人无尽的生死疲劳;触碰极致的痛苦与快乐,感受不灭的热情与希望。一世为驴、二世为牛、三世为猪、四世为狗、五世为猴,一次次的轮回中,西门闹用动物的视角目睹了人性百态,最终积怨化解重新转世为人。

2023-05-19 13:39:27 411

原创 发明专利公开 -- CSS动画精准实现时钟

上一篇【setTimeout不准时,CSS精准实现计时器功能】的博文,最后提到了通过 CSS 动画实现计时器的方式。本文详情描述如何通过 CSS 完整实现时钟效果,这也是团队 21 年专利的一项内容(专利公布号:CN114003087A)。该发明专利主要解决大屏下通过 javascript 实现的时钟不准确的问题。通过 CSS 动画进行计时,避免同步阻塞卡顿的问题。

2023-05-12 13:55:02 793

原创 文从字顺|程序员须知,如何编写高质量代码

高质量代码是软件开发中至关重要的一部分。高质量的代码不仅可以提高软件的可维护性和可复用性,还可以增强软件的安全性和稳定性。同时,可以降低软件维护成本,提升开发效率,为用户提供更好的使用体验。写出高质量代码是每个程序员追求的终极目标。

2023-05-06 13:25:59 623

原创 setTimeout不准时,CSS精准实现计时器功能

实际开发过程中,我们会经常遇到,首次进入页面进行相应提示,然后指定时间后自动消失或者前端时钟展示等需求。按照传统方案,我们可以使用 setTimeout 实现。但其存在:实际延时比设定值更久的情况。

2023-05-04 10:32:13 786

原创 【社区图书馆】30+危机,最值得读烂的5本书|必读

“年少时总会抱怨读书无用,殊不知那只是你没有用心感受读书带给你的好处。”一直觉得迈入30+大门并不可怕,“35岁危机”也离自己甚远。然而,近1年自己身上发生的一些事情,让自己越来越认识到:只有不断丰富内在、提高认知,才能不陷于现状、打破循规蹈矩的生活。至此,我增大阅读量,领悟“大家”的思想,不断获得新的启迪。

2023-04-23 17:10:29 571

原创 vue 模板中使用 console.log

模板中的表达式将被沙盒化,仅能够访问到有限的全局对象列表。该列表中会暴露常用的内置全局对象,比如 Math 和 Date。没有显式包含在列表中的全局对象将不能在模板内表达式中访问。如何注册能够被应用内所有组件实例访问到的全局属性?

2023-04-20 15:56:53 1023

原创 从兴趣或问题出发

当我们还沉寂在移动互联网给生活带来众多便利中,以 ChartGPT 为代表的 AI 时代已彻底到来。科技的发展,时刻在改变着我们的生活,我们需要不断地学习新知识和掌握新技能才能享受变化带来的便利,以及自身不被社会淘汰。因此,终身学习是每个人在当下社会所必须学会的技能。然而,当下又是匆忙的,每天的大量时间被工作所占据,如何在有限的时间高效学习更是关键。

2023-04-13 23:54:55 378

原创 深入实战探究 Vue 2.7 Composition API 的强大之处

Composition API是 Vue 2.7 中引入的一种新的组件逻辑复用方式。它与 Vue 之前的 Options API 有很大的不同。Options API:基于对象的方式,将组件的各种选项,如data、methods、computed等,组织在一个对象中;Composition API:允许我们将组件的逻辑拆分成更小的、可复用的部分,称为composition函数。在实际开发过程中,使用 Composition API 带来了一些显著的优点,使得组件可以更加灵活、清晰,复用性也得到显著提高

2023-04-12 19:50:15 799

原创 Thinking -- vue性能优化:保持 props 稳定

在 Vue 中,组件 props 的改变会导致组件更新。由此,确保组件 props 保持稳定,可以有效减少更新次数,提高效率。这个技巧的核心思想就是让传给子组件的 props 尽量保持稳定。

2023-03-30 14:20:57 241

原创 你真的了解 browserslist 吗?一文彻底搞懂

关于 Browserslist 大家一定都不陌生,在现有前端工程都会有它的身影。Browserslist 帮助我们在浏览器兼容性和包大小之间保持适当的平衡。使用 Browserslist,可以做到覆盖更广泛的受众(浏览器),同时包的体积也会保持最小化。通过下述内容,我们一一解答。

2023-03-29 18:01:49 716

原创 Thinking -- CSS从根解决选择前一个兄弟元素

何选中特定class的前一个兄弟元素。了解了浏览器正常情况下的流布局形式(从左到右,从上到下),我们就可以得知:CSS 之所以不支持,是由于其流布局导致。如果可以通过当前元素选择前一个兄弟元素,可能会导致额外的重绘操作!"既然没有选择前一个兄弟元素的选择器",那就布局反向(从右向左),这样问题就变为了”如何选择后一个兄弟元素“。解决这个问题的方式并不难,但思路值得延伸。

2023-03-21 18:07:06 3268 4

原创 webpack dll 提升构建速度

DLL,动态链接库(Dynamic Link Library 或者 Dynamic-link Library),由微软公司提出。目的是为了节约应用程序所需的磁盘和内存空间。在一个传统的非共享库中,如果两个程序调用同一个子程序,就会出现两份那段代码。让多个应用共享的代码切分到一个DLL中,在硬盘上存为一个文件,在内存中使用一个实例(instance)。DllPlugin 和 DllReferencePlugin 用某种方法实现了拆分 bundles,同时还大幅度提升了构建的速度。

2023-03-08 17:38:19 513

原创 map&area标签实现图片热点区域点击

在购物网站 Landing page 页,往往会存在商品宣传信息,为提升首页加载速度,往往会使用一张图片来包含所有要展示商品(① 减少http请求个数;② 减少页面DOM数)。如何在一张商品海报上,实现点击某商品,跳转到该商品详情页面?以上,也可以使用指定不规则的热点(可点击)区域。HTML与一起使用来定义一个图像映射 (一个可点击的链接区域)。

2023-02-28 10:37:54 440

原创 Thinking--复杂逻辑多分支判断优雅写法

Array.prototype.find() 方法返回数组中满足提供的测试函数的第一个元素的值。

2023-02-20 19:14:44 332

原创 一图说明 monorepo 落地流程方案

上图为目前团队贡献的主流程:① 本地开发 => ② 提交Git仓库 => ③ 触发 gitlab CI/CD => ④ 发布。关于 monorepo 初次讨论已有2年载,目前团队已经沉淀了成熟的技术方案且经受住了实战考验。

2023-02-20 11:51:28 333

原创 Thinking--FastDom消除浏览器布局抖动

对于大量操作 DOM 的场景,页面时常会出现卡顿现象,导致用户体验不佳。卡顿的原因是由于丢帧导致!FastDom 通过批处理 DOM 读/写操作 消除布局抖动。每一个 measure(读)/mutate(写) 操作任务都会被添加到对应的队列中。队列在下一帧使用 window.requestAnimationFrame() 执行。其目标是在应用程序的所有模块中像一个单例,返回相同实例,统一对 DOM 进行 读/写 操作。

2023-02-14 18:43:24 534

原创 一文搞懂SOLID原则(javascript)

SOLID 是面向对象编程重要的原则,javascript 作为面向对象开发的语言之一,掌握这些原则,可以写出更优雅的代码。SOLID 由 Robert C. Martin(其被誉为世界编程大师,设计模式、敏捷开发先驱)在21世纪初定义。采用 SOLID 编程,可以让代码的。ingle Responsibility Principle:单一职责原则pen Closed Principle:开闭原则iskov Substitution Principle:里氏替换原则。

2023-02-09 10:51:07 344

原创 华夏历史人物之「王阳明」

阳明心学的“知行合一,致良知”的哲学理论,更是影响着无数人,其被后人称为“圣人”(中国历史上两个半圣人–孔子、王阳明、曾国藩)。四配(颜回、曾子、子思、孟子)、十二哲(11位孔子得意弟子+南宋朱熹)、先贤(孔子弟子+孟子3弟子):79人;由于其对儒家文学的贡献,于明代万历十二年,从祀于孔庙的先儒之列。他的整套心学思想,成为日本明治维新运动的思想武器,推动日本走向了发达国家的行列中。与“孔子、孟子、朱熹”并称“孔孟朱王”,真正做到了不朽:立德、立功、立言。是非常之人,有非常之事,立非常之功。

2023-02-06 13:45:03 869

翻译 理解 javascript:void(0) 语句

在需要链接但不需要操作时用作占位符 URL,而用作占位符 URL 以跳转到页面顶部或在同一页面内创建内部链接。

2023-01-31 14:28:00 1795

原创 从南丁格尔图到医学发展史

可视化中,前端用于表现不同类目的数据在总和中的占比的场景,往往会采用饼图。针对数据大小相近,南丁格尔图的呈现会更加美观。

2023-01-16 14:55:34 471

原创 vue2.0 插槽不是响应性的

请注意插槽不是响应性的。如果你需要一个组件可以在被传入的数据发生变化时重渲染,我们建议改变策略,依赖诸如props或data等响应性实例选项。

2023-01-12 10:56:15 821

原创 Web Workers RPC:Comlink 源码解析

上篇文章,有提及 Web Workers RPC 以解决浏览器不阻塞UI的问题,其中 comlink 是一把利器,本文就 comlink 的关键源码进行解析。Comlink 通过提供 RPC 实现将基于的 API 变成了对开发人员更友好的“类似本地调用”方式。

2022-10-24 11:42:33 1166

aes加密&解密算法前端实现

AES加密解密算法前端实现 高级加密标准(AES,Advanced Encryption Standard)为最常见的对称加密算法。 上述借助开源库crypto实现了AES的加密&解密方式 aesEncrypt、aesDecrypt。 上述可直接在浏览器端使用,需要安装依赖crypto。

2023-02-23

程序员面试宝典-前端-2023最新

程序员面试宝典-前端-2023最新版 包括“面试涉及范围”、“岗位技能要求” 从“素质考察”、“项目经验考察”、“技能考察”三个方面入手,题目由浅入深、前后关联、多数题目没有标准的答案,主要对技术深度挖掘及判断基础知识的掌握。 包含各种考察题目。涉及:HTML/CSS、DOM/BOM、JavaScript、Typescript、框架、vue全家桶、打包构建、网络协议、服务端、操作系统、跨终端、Git、自动化测试、开发流程、代码可维护性、安全开发、学习能力、技术嗅觉、开源等多个方面考察题目。 打破砂锅问到底是这份宝典的精髓。

2023-02-23

毕业论文-办公自动化系统的设计和实现

随着计算机网络通信技术的发展,资源整合的信息系统已成为各高校提高管理水平的主要目标。自动化办公系统应运而生。 本系统采用B/S构架,以Tomcat作为服务器,基于MyEclipse开发工具,以Spring+Struts+Hibernate框架作为底层设计技术,结合MySQL数据库,通过跨平台性的JAVA语言实现逻辑功能,JSP+JAVAScript+CSS 动态网页技术进行界面设计。本系统包括角色管理、职工管理、考勤管理、计划管理、审核管理、通讯管理、日常管理、个人信息管理等模块。利用拦截器和过滤器实现“用户、角色、权限”三维管控,使系统更加具有层次化和结构化。 本系统具有易用性、健壮性、严密性和实用性等特点,将现代化办公和计算机技术有机结合。

2023-02-20

vue知识图谱.xmind

一张图带你了解整个xue全家桶相关。包括vue、vue-router、vuex、webpack、浏览器相关等所有vue全家桶相关知识点。

2021-03-31

jQuery常用插件

jQuery常用插件\验证插件validate\表单插件form\图片切换插件\进度条插件\动画表格排序插件\数据分页插件\滚动条插件\消息通知条插件

2014-12-01

jquery插件

验证插件validate、表单插件form、Cookie插件cookie、搜索插件AutoComplete、图片灯箱插件、右键菜单插件、图片放大镜插件、图片切换插件、动画表格排序插件、进度条插件、页面加载遮盖插件、消息通知条插件、数据分页插件Pgination、滚动条插件NiceScroll

2014-11-15

yuicompressor-2.4.jar

压缩JS所使用jar包! 压缩JS:java -jar yuicompressor-2.4.jar --type js xxx.js -o xxx.js --charset utf-8 压缩CSS:java -jar yuicompressor-2.4.jar --type css xxx.css -o xxx.css --charset utf-8

2014-11-10

空空如也

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

TA关注的人

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