前段时间换了工作,从以前的天天跟产品对需求写业务,变成了现在天天翻
Github
看别人都怎么搭项目做组件库,虽然依然都是每天写代码,但博客却断更了。。。。话说从业务线转变到技术线之后,最大的体会就是,很多技术,不再是光会用就可以的了,还是得深入学习一下。这篇博客,对我研究动态的系统主题切换这个问题过程中的一些尝试做一个总结。
算法学习(六):反转单向链表
在知乎上关于 为什么前端工程师那么难招 这个问题里,一个答主说他招前端结果过来面试的很多连单向链表反转这种简单的面试题都写不出来。然后在微信群里也看到有人在讨论这个问题,就想着自己也来掺合一下,看看这道题到底是个啥。
说起来前端在实际工作中其实几乎遇不到链表这种数据结构,大部分人可能都是像我一样,知道链表是个什么东西,但也没有深入去了解和实现过,可能有的同学连链表是什么都不一定清楚,但其实在这道题上这并影响不大,还是很容易的,只要别上来就露怯,就算不知道链表是什么东西,也是八九能解出来的。不过话说真不知道的同学,还是应该去了解一下,万一下次被面到呢。。。
这篇博客,就记录一下我解这道题的一些思路和心得。
(译)深入React的组件生命周期
本来想自己写一篇关于
React
组件生命周期的博客做个总结,但看到这篇 ReactJs component lifecycle methods — A deep dive ,觉得它写的还是蛮清晰易懂,肯定比我写的好,所以就不再自己去搜肠刮肚了,直接翻译过来。。。
RxJs系列(四):常用操作符
话说人一旦懒起来还真是容易刹不住车啊,又是差不多有一个月没有写博客了。
今天来接着说一说
RxJs
,话说上一篇博客介绍了一些常见的Observable
创建操作符,那这篇博客就来说一说用于对Observable
进行操作的一些操作符。这类操作符数量不少,而且作用各式各样,有相当一部分操作符很难通过单纯的文字介绍透彻的说明它们的作用。不过还好,根据28原则来说,相当一部分技术概念我们在实际开发中不是那么常遇见。这篇博客,就介绍一些比较常用,而且理解了这些操作符可以帮助我们快速的上手使用
RxJs
,最终可以使用操作符高效的实现异步流程控制。在关于
RxJs
的文章里我曾经看到过一句话,当你遇到一个RxJS
无法模拟的异步流程时,你首先要反思一下自己是不是真的掌握了RxJs
,这句话有些高调,但我觉得不是说谎。Ok,进入正文。
前端模块概述
前端的模块化方案经历了相当久的发展,如今已经具有了相当的复杂度,甚至到了有些混乱的程度。各方的不同形式,不同实现的模块化方案在开发中都时不时出现,给很多前端开发人员带来了很多不愉快的心智负担。
今天这篇博客,就来谈一谈前端的模块化方案的发展历程。
从动态组件谈一谈 Angular和Vue
又是半个月一个字都没写,眼看 2018 年又要到头了,时间过得飞快。今年年初定的目标,看起来好像又要一梦黄粱去了,唉,只能勉强安慰自己,至少一直在路上,且行且珍惜吧。
今天这篇博客,我们就来聊一聊
Angular
和Vue
两个前端框架的动态组件特性,同时通过它们各自实现方式的对比,体会一下两个框架从基于模式取舍和设计思想考量的不同,最终延伸出的各种差异和得失。OK,不多说废话,开始正文。
前端安全之XSS
XSS 漏洞是前端安全领域里最常见的安全漏洞之一,因为它的攻击方式灵活,可操作性极强,经常被hacker用来做渗透和攻击。作为一名前端工程师,非常有必要了解一下
XSS
的具体形式和常用的防范手段,从而在日常的开发工作中能够有意识的进行防范。今天这篇博客,我们就来详细的介绍一下,
XSS
是个什么东西。
RxJs系列(三):创建操作符
(译)从Angular谈一谈前端的错误处理
偶然在angular-realworld-example-app这个项目的
issue
中看到有人说此项目缺乏相应齐备和完善的错误处理,因此还是别叫realword了,因为根本跑不起来,同时还贴了一篇文章来说明一个Angular
项目的错误处理应该是怎样的。这篇文章名字叫做[Error Handling & Angular][link2],写的还真是非常好。我最近也经常思考如何才能完美的优雅又省力的处理前端框架中请求错误,数据错误,兼容错误等等各式各样的错误,尽量提高页面的适应性,保证错误发生时不至于损失太多的用户体验的同时又不会在项目中混杂太多的错误处理代码导致业务代码的
bad smell
。这篇文章,虽然讲的是
Angular
的错误处理,但其中展现出对前端错误的归纳方法和处理之道,无论使用什么框架,都会收获颇多。因此翻译过来,与大家共享。
ps:本篇博客中使用的在线编辑器[StackBlitz][link3]需要翻墙才能访问,也就是说本篇博客的阅读最好在翻墙情况下进行……
再ps:我正在找不需要翻墙又比较好用的在线编辑器,等找到了就会把相应的
Demo
实例迁移过去,希望我能够早点找到……
Git worktree
在
Git
的工作流中,我们经常会遇到需要从当前分支临时切换到其他分支的情况,如果此时我们有未提交的改动的话,Git
就会告诉我们无法切换分支。一般的,我们都是通过git stash
命令来将改动先暂存起来,或者临时的进行一个commit
在随后再reset
回来。但这种在同一个工作目录中切来切去,伴随着文件的修改新增删除,非常麻烦,如果不注意的话,还容易出错。
在更极端的情况下,如果我们正在当前分支下跑测试或者编译,我们想一边测试或者编译一边
code
呢,要怎么办,git
办不到吗?其实完全可以,
git worktree
命令,就是为了解决分支切来切去问题的。它可以让我们为同一个仓库开多个工作目录,每个工作目录盛放不同的分支,同时它还可以自动的做好多分支的同步,在需要同时处理多个分支时,十分的便捷和好用。
这篇博客,就主要来介绍一下这条
git
命令。ps: 大部分内容翻译自官方文档,有的地方为了便于理解,进行了内容的整理和优化。