2022-06-02 E006-分享一些 frontend 相关的工作记录


欢迎阅读蒋继发的《每周分享》第六期,本期主要是分享一些 frontend 相关的工作记录。

蒋继发的《每周分享》每周四发送,欢迎大家订阅。我目前在日本做 SaaS 产品,爱猫、爱读书、爱大海。所以,我可以分享一些工作经验、日本生活体验以及阅读感受等等。

本周有哪些工作方面的内容可以和大家分享?

1. AutoAnimate - Add motion to your apps with a single line of code.

偶然发现这个 library,虽然算不上功能强大,但是 1 行代码添加动画效果对于一些小型项目的确很有吸引力。我可能会在自己的 Toy Project 中尝试一下。

不过我并不推荐这个 library,理由很简单,它的功能不够强,再稍微大型一点的项目中就无法满足需求了。例如:没有提供拖拽(DnD)相关支持,没有大量的示例(Samples)。

2. useEffect tip: don't

本周和团队分享了这个 React.js 技巧:useEffect tip: don't,演讲视频:https://youtu.be/Ck-e3hd3pKw?t=3993

“会 React.js”和“真的会 React.js”之间的差距就像“会写字”和“会写小说”一样遥远。

TJ

看过很多 developer 说 React.js 很简单,几天就能学会。 React.js 难吗?说实话我认为 Raect.js 有点难,至少我自己经常犯错。不过这不可怕,可怕的是我能看出来其他人的代码是错的,但是我说不明白为什么。就像我知道 1 + 1 = 3 是错误的,但是我说不来为什么;就像我知道红色和蓝色 1:1 混合可以得到紫色,但是我说不出来为什么。这感觉真的太糟糕了。

没有实际代码,我无法解释 React.js 到底哪里难。我只能推荐几个改变我思维方式的资源,希望它们也能帮助大家真正掌握 React.js。

  1. State so simple, it goes without saying
  2. Using Composition in React to Avoid "Prop Drilling"
  3. A Complete Guide to useEffect

3. loading is loading, error is error, empty is empty

你有没有写过这样的代码?

{!data && <Loading /> }
{ error && <ErrorMessage /> }

效果如下:

我原本以为这是一个很简单的概念,但是看过 n 多次上门的代码以后我开始认真思考这个问题。为什么那么多人不懂这个概念?后来我想明白了,这个概念对计算机科学专业科班出身的人很简单,因为这是一个状态机(State Machine)。但是对于没有计算机基础的开发者,状态机是一个非常陌生的概念。

如果你不知道状态机,我推荐你学习一下。相信你会在软件开发领域更上一层楼。

本周有哪些生活方面的内容可以和大家分享?

上个周末是 5 月份的最后一个周末,我又去参加读书会了。我非常喜欢读书会活动,我自己是一个不擅长社交的人,新认识的朋友通常就是加个微信就结束了,通常不会主动约出来见见面。读书会每个月都有聚会,不需要我主动,只需要在指定的时间到达指定的地点就好了,简直太适合我了。并且,读书会的朋友们都是真的爱读书,可能是兴趣相投,我太爱他们了,读书会就是我在日本的精神港湾。

5月的读书会我分享了《ビジネスモデルの未来予報図51》

这本书有点像杂志,内容非常零散,每个内容通常只有1~2页的篇幅,主要就是介绍了一些未来可能流行起来的商业或者服务。当作拓展视野的休闲读物还不错,有几个商业点子还挺有意思的,例如:人造流星雨、深海龙宫(酒店或者度假村)、自动化妆仪等等。

以上就是本次分享的全部内容,十分感谢你看到这里。

最后,为了方便大家订阅《蒋继发的每周分享》我也开始使用 Revue 了,大家可以在 https://www.getrevue.co/profile/thaddeusjiang 订阅 Email 推送。内容同步发布在https://thaddeusjiang.com/weekly

refs: