Chat:Vue 进阶必经之路

Vue 进阶必经之路

Vue 的学习曲线平缓,入门很简单,所以后发夺人,争取到一大批支持者,我也是其中之一。但是因为隐蔽了很多细节,所以我也没少踩坑,挠头拍桌,不厌其烦。如今,我终于突破屏障,遇到大部分问题,都能举一反三,快速定位、快速解决。这段过程,难免追本溯源,穷究细节。我希望通过这次分享,把我的经验和收获传达给大家。

面向听众:

1. 有一定 Vue 开发经验,希望进一步提升;
2. 平时业务代码写得多,想学习技术细节。

写完了,不得不说,没有预先想象中写得好。原因嘛,当然是工作太忙,能够写文的时间不太够。以后还是平时多写,Chat 当汇总比较好。

不过还是希望大家都来看,毕竟我这两年踩坑得到的 Vue 经验都在里面了。

继续阅读“Chat:Vue 进阶必经之路”

用 `resize` 和 MutationObserver 实现缩放 DOM 并记录尺寸

使用 `resize: vertical` 和 MutationObserver 实现调整任意元素的尺寸,并且记录它的尺寸以备再次使用。

我厂既然号称“机器编程”,DSL 便属于基础配置。于是,各个产品几乎都需要用到 CodeMirror,用于在线写代码。大家的屏幕分辨率不同,对编辑器的大小要求也不同,最简单的办法就是让大家自己调整,并且将尺寸保存在本地。

以前的做法会复杂一些:

  1. 拿一个元素作为 handle 放在角落里
  2. mousedown 时开始侦听 mousemove,动态调整文本框大小
  3. mouseup 时保存尺寸

如今大家应该都有注意到,<textarea> 右下角多了一个缩放用的 handle。这个功能自然不是 <textarea> 独享,而是受 CSS 样式 resize 控制,任何块级元素都适用。MDN 文档在此,建议大家先好好看一遍。

继续阅读“用 `resize` 和 MutationObserver 实现缩放 DOM 并记录尺寸”

2019泰国曼谷初印象

年初去了趟泰国,很喜欢,小记一下。

由于工作的关系,2019年1月份我在泰国曼谷呆了几天,初步感受了下这个充满魔幻感、各种元素杂糅、又非常有魅力的城市。

东南亚各国,泰国最有名,但我只去过一次清迈。我对泰国的印象基本来自电影电视,比如《宿醉2 》、《泰囧》和《唐人街探案》。电影里面对泰国的描述当然极尽夸张之能事,不过真到了那里,发现还真的很魔幻。

曼谷比较出名的天台bar
继续阅读“2019泰国曼谷初印象”

如何加入一家全职远程的公司

自从我厂开启招聘之后,陆续收到一些简历。除去一些明显不靠谱的,也有不少同学的简历看起来很好,但明显只是为“远程”而来,满脑子都惦记着远程之后坐在海边一边打望比基尼美女,一边啜饮鲜榨果汁,一边写代码的生活。却没有想过自己能给公司带来什么。

没错,我也曾这么幻想着,加入了我厂。加入之后的工作生活虽然称不上幻灭,但绝对和预期不同。所以今天,我决定写点什么,让大家了解全职远程的真实状态,同时理解远程的需求,以便更好的抉择今后的职业道路。

以下的内容不仅包含远程,还有“小型创业公司”。我还没见过中型或更大的“全员远程”公司,所以姑且认为这种组织形式和大多数老板的管理水平,暂时无法负担更大规模的协作吧。

继续阅读“如何加入一家全职远程的公司”

OpenResty Inc 招聘前端工程师

我们 OpenResty Inc 的中国大陆子公司诚邀前端工程师加入。希望能和对前端技术有激情,有想法,有追求的年轻人一起构建优美而强大的各种 Web 应用。不要求非得是大牛,但需要有强烈的求知欲和强大的学习能力。可以致力于 Vue、d3.js/SVG、three.js/WebGL、WebExtensions、CodeMirror 等各种技术栈的创造性的前端工作。拥有一定的美感和品味。不拘一格,喜欢挑战。曾做过酷炫的前端应用可以展示给我们。我们不纠结学历、学校和公司工作经历。远程工作模式,工作地点随意。我们会签订正式的劳动合同,会提供五险一金。会提供丰厚的美国公司的期权。对于还在学校的同学,也提供兼职职位和毕业后的转正途径(如果能胜任工作的话)。欢迎有兴趣的朋友投简历到 talents@openresty.com 邮箱,记得附上自己最酷的作品哦。

发给我也可以 meathill@openresty.com。