自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

李刚的学习专栏

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

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

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

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

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

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

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

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

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

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

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

原创 定时任务高效触发

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

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

原创 Hooks:尽享React特性 ,重塑开发体验

React 16.8 版本引入了 Hooks ,可以在不使用 Class 的情况下使用 React 特性。Hooks 允许从函数组件 “hook into” React 状态和生命周期特性。Hooks 让我们根据代码所做的,而不是生命周期方法名称来分割代码。React 组件一直更像是函数,而 Hooks 则拥抱了函数。

2024-04-11 11:21:12 874

原创 对比:React 还是 Vue

随着 Vue、React 的演进,其各自框架的基本形态和功能已经很完备,最根本差异点逐渐演变成了框架开发者各自的理念差异,不同的理念让框架有了各自的设计模式和最佳实践。然而,对于使用者来说,搞懂其设计模式、沉淀其最佳实践、了解其基本原理,是掌握一门框架的捷径,也是衡量对其熟悉程度的标尺。Vue 更贴近传统前端开发方式,更符合人的直觉,更易上手更简单;React 让函数变得更加复杂,使用者有更大的控制权,更加灵活,从而优雅。

2024-04-01 20:22:32 1131 2

原创 Effect:由渲染本身引起的副作用

Effect 允许指定由渲染本身,而不是特定事件引起的副作用。React 组件中的两种逻辑类型:① 渲染逻辑代码 位于组件的顶层,接收 props 和 state,进行转换,返回屏幕上看到的 JSX,只计算不做其他任何事情;② 事件处理程序 嵌套在组件内部的函数,由特定的用户操作(如按钮点击)引起的”副作用“(改变了程序的状态)。实际开发过程中,还会遇到当进入页面时触发一些动作(如播放视频、日志发送、连接到聊天服务器等)。其①不能在渲染过程中发生,②也没有一个特定的事件(比如点击。

2024-03-20 16:57:17 616

原创 脱围:使用 ref 保存值及操作DOM

ref 是一种脱围机制,用于保留不用于渲染的值。同时,ref 是一个普通的 JavaScript 对象,具有一个名为 `current` 的属性,可以对其进行读取或设置。与 state 不同,设置 ref 的 `current` 值不会触发重新渲染**。**不要在渲染过程中读取或写入 `ref.current`。这使组件难以预测。

2024-03-11 16:10:07 859

原创 续篇:展开聊下 state 与 渲染树中位置的关系

状态与渲染树中的位置相关:相同位置的相同组件会使得 state 被保留下来 ;相同位置的不同组件会使 state 重置 。只要一个组件还被渲染在 UI 树的相同位置,React 就会保留它的 state。如果它被移除,或者一个不同的组件被渲染在相同的位置,那么 React 就会丢掉它的 state。

2024-03-11 11:35:53 927

原创 总结:React 中的 state 状态

`props`:只读,父组件通过 `props` 传递给子组件其所需要的状态;子组件内部不能直接修改`props`,只能在父组件中修改。`state`:可变,是组件内部维护的一组用于反映组件UI变化的状态集合。React 会将更新函数依次加入队列,以便在事件处理函数中的所有其他代码运行后进行处理。在下一次渲染期间,React 会遍历队列并给你更新之后的最终 state。

2024-03-04 18:18:03 958

原创 探讨:围绕 props 阐述 React 通信

React 组件使用props来互相通信。每个父组件都可以提供 props 给它的子组件,从而将一些信息传递给它。当组件中的重要信息是由 `props` 而不是其自身状态驱动时,就可以认为该组件是“受控组件”;受控组件具有最大的灵活性,但它们需要父组件使用 `props` 对其进行配置。当组件中的重要信息是由其自身状态 `state`驱动时,就可以认为该组件是“非受控组件”;非受控组件通常很简单,因为它们不需要太多配置。

2024-02-28 20:10:04 947

原创 开篇:通过 state 阐述 React 渲染

React中,有两种原因会导致组件的渲染: ① 组件的初次渲染。② 组件(或者其祖先之一)的状态发生了改变。State setter 函数更新变量(状态发生改变)并触发 React 再次渲染组件。

2024-02-21 20:11:53 1014

原创 echarts 中如何将 legend 设置成「直线」

echarts 中如何将 legend 设置成「直线」

2023-10-09 21:06:25 1674 2

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

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

2023-08-31 18:39:36 314

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

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

2023-08-21 18:05:16 555

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

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

2023-08-11 18:00:28 822

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

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

2023-07-31 16:41:46 1084

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

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

2023-07-17 11:05:01 318

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

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

2023-07-11 22:18:30 438

原创 【揭秘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 307

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

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

2023-07-04 11:42:31 706

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

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

2023-06-28 18:59:40 426

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

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

2023-06-27 18:49:13 424

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

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

2023-06-25 22:40:53 376

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

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

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

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

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

2023-06-23 18:42:01 313

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

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

2023-05-30 16:17:25 1338

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

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

2023-05-19 13:39:27 508

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

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

2023-05-12 13:55:02 872

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

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

2023-05-06 13:25:59 677

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

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

2023-05-04 10:32:13 923

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

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

2023-04-23 17:10:29 605

原创 vue 模板中使用 console.log

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

2023-04-20 15:56:53 1830

原创 从兴趣或问题出发

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

2023-04-13 23:54:55 406

原创 深入实战探究 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 1207

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

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

2023-03-30 14:20:57 299

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

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

2023-03-29 18:01:49 1034

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

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

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

原创 webpack dll 提升构建速度

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

2023-03-08 17:38:19 605

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

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

2023-02-28 10:37:54 668

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关注的人

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