2019-08-03其他-Others高效前端项目自动化构建部署实践——使用webhook钩子运维优化原由最近访问我的博客网站的时候,我发现经常会出现打不开的情况,我的博客是搭载在coding的coding pages服务上的,仔细检查了coding服务上的代码,发现没什么毛病,应该就是coding pages的服务器不稳定造成的,由于最近在投递简历,这个情况也给我造成了一定的困扰,考虑到要给招聘者良好的浏览体验,我决定要优化一下自己的博客网站运行环境了。 阅读全文…
2019-07-12其他-Others如何将fork过的仓库和原仓库更新到一致我们经常会在GitHub上fork别人的项目,我也这样弄过几个仓库,最近遇到了这样的问题,我发现原仓库近期有了好多更新,但是自己fork的项目并没有去同步它们,这个时候我需要将原仓库的更新同步到我fork过的仓库中。但是GitHub上也没有指导这样做的方法。 阅读全文…
2019-03-13工具-ToolsWebpack中mini-css-extract-plugin开发时热重载的方法在使用Webpack自定义构建项目的脚手架的时候,我们常常会使用到mini-css-extract-plugin这个插件来将css代码提取出来构建成单独的一个css文件。 阅读全文…
2019-02-22其他-OthersGit提交时的emoji表情使用指南在浏览他人的优秀的Github项目时,我有时会发现这种情况,git的提交记录竟然有emoji前缀,感觉好有趣的样子:Git-emoji一番探索后,我发现了emoji在git中的使用方法:直接在git提交时添加emoji图标代码就可以了,如下: 阅读全文…
2019-01-21其他-Others如何让Hexo博客支持emoji显示我们知道Hexo博客默认的markdown渲染引擎hexo-renderer-marked是不支持emoji渲染的,如果hexo博客需要支持emoji,我们需要更换其markdown渲染引擎为hexo-renderer-markdown-it,然后安装markdown-it-emoji插件,最后更改站点的markdown配置即可。 阅读全文…
2019-01-13前端-FrontEnd文字不足一行的情况下两端对齐的解决方案在开发有关表单组件的时候我们经常会碰到这样的需求:表单的label有的是3个字有的是2个字,这种情况下,还需要文字在label区域内两端对齐,如下设计图红圈里的label。 阅读全文…
2018-09-27前端-FrontEnd如何比较两个对象是否相等在我们处理有关对象的业务逻辑的时候,你可能见过这种奇怪的现象:compare-objects即使两个不同的对象可以具有相同的属性,但在使用==或===进行比较时,它们不被认为是相等的。这是因为它们是通过引用(内存中的位置)进行比较的,而不是按值进行比较的原始值。 阅读全文…
2018-09-21前端-FrontEnd如何在不卡住浏览器的前提下渲染数万条数据在某些特殊的场景下,我们需要在不卡住页面的情况下渲染数据,也就是说不能一次性将几万条都渲染出来,而应该一次渲染部分 DOM,那么就可以通过 requestAnimationFrame 来分多次将数据渲染出来。 阅读全文…
2018-09-18算法-AlgorithmJavaScript实现防抖和节流的方法防抖你是否在日常开发中遇到一个问题,在滚动事件中需要做个复杂计算或者实现一个按钮的防二次点击操作。这些需求都可以通过函数防抖动来实现。尤其是第一个需求,如果在频繁的事件回调中做复杂计算,很有可能导致页面卡顿,不如将多次计算合并为一次计算,只在一个精确点做操作。PS:防抖和节流的作用都是防止函数多次调用。区别在于,假设一个用户一直触发这个函数,且每次触发函数的时间小于设定的间隔时间,防抖的情况下只会调用一次,而节流的情况会每隔一定时间(设定的延迟时间)调用函数。 阅读全文…
2018-09-16前端-FrontEndObject.defineProperty妙用——Vue2数据双向绑定的原理最近看了一下 Vue.js 的实现相关的文章,了解到了其数据劫持(双向绑定)的原理,使用到了Object.defineProperty这个方法,花了点时间,自己尝试着做了一个小 demo。MDN 解释:Object.defineProperty方法会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性, 并返回这个对象。 阅读全文…