花1块钱让你的网站支持 ChatGPT

2023-03-02
阅读 10 分钟
1.4k
感谢大家的支持,我的 Open AI个人账户免费额度已经用尽,非常抱歉,请大家自行按照文章和源码搭建体验吧,或者自己注册一个账号去后台体验。

我以为我很懂Promise,直到我开始实现Promise/A+规范

2021-03-08
阅读 19 分钟
2.2k
我一度以为自己很懂Promise,直到前段时间尝试去实现Promise/A+规范时,才发现自己对Promise的理解还过于浅薄。在我按照Promise/A+规范去写具体代码实现的过程中,我经历了从“很懂”到“陌生”,再到“领会”的过山车式的认知转变,对Promise有了更深刻的认识!
封面图

解读闭包,这次从ECMAScript词法环境,执行上下文说起

2020-08-11
阅读 13 分钟
2.2k
对于x年经验的前端仔来说,项目也做了好些个了,各个场景也接触过一些。但是假设真的要跟面试官敞开来撕原理,还是有点慌的。看到很多大神都在手撕各种框架原理还是有点羡慕他们的技术实力,羡慕不如行动,先踏踏实实啃基础。嗯...今天来聊聊闭包!

千万别小看这些运算符背后的逻辑

2020-06-04
阅读 4 分钟
1.3k
最近回顾javascript的一些基础知识点时,引起的思考确实颠覆了我之前的一些认知。我清楚地记得曾多次在网上看到一些奇奇怪怪的表达式,它们的运算结果着实让人懵逼。就比如我在js数据类型很简单,却也不简单这一篇笔记中提到的[] == ![]这样一个表达式,它的运算结果是true。如果你不细致地去研究它背后的运算逻辑,你只...

js数据类型很简单,却也不简单

2020-05-11
阅读 7 分钟
1.1k
最近脑子里有冒出“多看点书”的想法,但我个人不是很喜欢翻阅纸质书籍,另一方面也是因为我能抽出来看书的时间比较琐碎,所以就干脆用app看电子书了(如果有比较完整的阅读时间,还是建议看纸质书籍,排版看起来更舒服点)。考虑到平时工作遇到的大部分问题还是javascript强相关的,于是我选择从《Javascript权威指南第6...

记一次Navicat for MySQL 10060错误的解决过程

2020-03-17
阅读 2 分钟
6.6k
最近加班挺多,所以也好久没远程访问自己云服务器上的MySQL数据库了。今天本地启动Node服务时连不上MySQL,照常用Navicat For MySQL连接远程数据库进行检查,结果发现突然报错了。

前端小微团队的Gitlab实践

2020-03-09
阅读 10 分钟
4.2k
疫情期间我感觉整个人懒散了不少,慢慢有意识要振作起来了,恢复到正常的节奏。最近团队代码库从Gerrit迁移到了Gitlab,为了让前端团队日常开发工作有条不紊,高效运转,开发历史可追溯,我也查阅和学习了不少资料。参考业界主流的Git工作流,结合公司业务特质,我也梳理了一套适合自己团队的Git工作流,在这里做下分享。

Browserslist: caniuse-lite is outdated

2020-03-04
阅读 1 分钟
21.5k
今天打包vue项目,突然蹦出一个告警: {代码...} 按照提示操作,运行npm update也没有解决。 于是我查询了一下npm手册,得知是不能直接运行npm update的,必须带上包名,所以应该这样写命令: {代码...} 或者直接删了node_modules/caniuse-lite文件夹,然后重新安装: {代码...} 这样问题就解决了!

共克时疫,https+小程序为“战疫”献上一份技术力量

2020-02-08
阅读 3 分钟
4.5k
新型冠状病毒笼罩下的新年,让每个中国人都感到恐慌和揪心。我们每天为前线的白衣天使和平民英雄们的事迹感动而落泪,也为不法分子哄抬物价,无良个人以权谋私等自私自利的行为而感到痛心疾首。作为普通人,我们最大的贡献就是宅在家里,响应钟南山院士的号召,做好个人防护,不为疫情添负担,不为他人添麻烦。最近看到...

前端自动化部署的深度实践

2020-02-04
阅读 5 分钟
3.7k
年前我也在自动化部署这方面下了点功夫,将自己的学习所得在自动化部署的一小步,前端搬砖的一大步这篇博客中做了分享。感谢两位网友@_shanks和@TomCzHen的意见,让我有了继续优化部署流程的动力。本文主要是在自动化部署流程中,对版本管理和流程合理性等方面做了一些改进,配合规范的工作流,使用体验更佳!

自动化部署的一小步,前端搬砖的一大步

2020-01-17
阅读 3 分钟
2.8k
在nodejs日渐普及的大背景下,前端工程化的发展可谓日新月异。构建打包这种日常任务脚本化已经是常态了,webpack和gulp已经家喻户晓自然不必多说,而持续集成/持续交付/持续部署也越来越得到各个前端Team的重视,业界也有了很多成熟的概念或者方案,如Hudson, Jenkins, Travis CI , Circle CI, DevOps, git hook。然而对...

入门babel,我们需要了解些什么

2019-12-17
阅读 9 分钟
4.8k
说实话,我从工作开始就一直在接触babel,然而对于babel并没有一个清晰的认识,只知道babel是用于编译javascript,让开发者能使用超前的ES6+语法进行开发。自己配置babel的时候,总是遇到很多困惑,下面我就以babel@7为例,重新简单认识下babel。

从一道面试题简单谈谈发布订阅和观察者模式

2019-12-12
阅读 6 分钟
5.9k
今天的话题是javascript中常被提及的「发布订阅模式和观察者模式」,提到这,我不由得想起了一次面试。记得在去年的一次求职面试过程中,面试官问我,“你在项目中是怎么处理非父子组件之间的通信的?”。我答道,“有用到vuex,有的场景也会用EventEmitter2”。面试官继续问,“那你能手写代码,实现一个简单的EventEmitter...

前端API层架构,也许你做得还不够

2019-12-04
阅读 9 分钟
4.5k
上午好,今天为大家分享下个人对于前端API层架构的一点经验和看法。架构设计是一条永远走不完的路,没有最好,只有更好。这个道理适用于软件设计的各个场景,前端API层的设计也不例外,如果您觉得在调用接口时还存在诸多槽点,那就说明您的接口层架构还待优化。今天我以vue + axios为例,为大家梳理下我的一些经历和设想。

Git多个远程仓库不同步时的补救办法

2019-11-19
阅读 2 分钟
2.7k
由于不小心在远程仓库gitee上手动修改了README.md文件,导致两个远程仓库出现了差异。所以当我在本地完成了一部分功能,准备提交到远程仓库时,出现了报错。

因为new Date(),我给IE跪了

2019-11-15
阅读 1 分钟
1.8k
后端返回的日期字符串格式为:yyyy-MM-dd HH:mm:ss,看到这个格式,大部分人都会觉得这应该是标准格式吧,我也是这么认为的,觉得没有任何兼容问题。转换语句如下:

用初中数学知识撸一个canvas环形进度条

2019-11-09
阅读 9 分钟
2.3k
周末好,今天给大家带来一款接地气的环形进度条组件vue-awesome-progress。近日被设计小姐姐要求实现这么一个环形进度条效果,大体由四部分组成,分别是底色圆环,进度弧,环内文字,进度圆点。设计稿截图如下:

ionic初体验

2019-11-05
阅读 3 分钟
2.1k
搞了一波cordova后,算是对Hybrid有了一点点微小的认知。为了快速开发,ionic无疑是更好的选择,它底层的打包和通信机制基于cordova实现,在上层实现了自己的UI组件,可以结合Angular或React使用,并且宣称将在未来支持Vue。

cordova开发环境搭建

2019-11-01
阅读 5 分钟
6.2k
最近我在尝试了解跨平台技术的发展,首先则是想到了cordova。本文简单记录下cordova环境搭建的过程。 安装cordova 首先是要npm全局安装cordova {代码...} 创建应用 安装的cordova类似于create-react-app这种脚手架,可以通过命令行直接创建应用 {代码...} 添加平台支持 cordova可以支持ios, android, web三端。 {代码......

gradle环境搭建

2019-10-28
阅读 1 分钟
2.1k
最近我在尝试了解跨平台技术的发展,首先则是想到了cordova。环境配置过程中有依赖gradle,下面简单记录了在windos10系统下搭建gradle环境的过程。

耐人寻味的CSS属性font-family

2019-10-23
阅读 2 分钟
5k
font-family是一个网站用户体验的第一入口,非常有必要花功夫来研究一下。我们首先需要了解衬线字体和无衬线字体,接着了解中英文的常用字体及其适用性。

如何判断IE OCX插件正常安装?

2019-10-16
阅读 2 分钟
2.7k
项目中用到了一个第三方的ie ocx控件,而经常遇到客户和测试小伙伴反馈相关功能无法正常使用,也没有友好提示。考虑到这个问题,必须要有一个ie ocx控件的检查机制。

【重拾基础】耐人寻味的CSS属性white-space

2019-10-13
阅读 2 分钟
4.2k
《耐人寻味的CSS属性white-space》,本文说的white-space是一个控制换行和空白处理的CSS属性。我曾经被这个属性烦死,一直没记住,今天决定还是写下来好好琢磨下。

【重拾基础】块级元素和行内元素

2019-09-26
阅读 2 分钟
1.9k
最近给自己定了一个小目标,一周温习一个基础知识点,并输出一篇手记。看自己是否能坚持下去。^_^ 块级元素 块级元素占据独立的空间,有以下特点: 独占一行或多行 宽度,高度,内外边距可以设置,且有效 宽度默认是父容器的100% 可以作为其他块级元素和行内元素的父容器(文本类块级元素不建议作为其他块级元素的容器,...

即将是史上最全的meta大全

2019-09-24
阅读 5 分钟
5.2k
本文的目的是搜集当前主流的meta配置,方便开发者快速开发调试。在这里不会做各种meta的深入分析,只是简单的介绍,让大家知道有这个东西。 meta简述 meta用于描述 HTML 文档的元数据。通常用于指定网页的描述,关键词,作者及其他元数据。 元数据可以被使用浏览器(如何显示内容或加载页面),搜索引擎(关键词),或其...

发布一个简单的npm包

2019-09-21
阅读 3 分钟
1.2k
本文简单地记录了发布一个简单npm包的过程,以便后续参考使用。 初始化npm init 通过npm init创建一个package.json文件 {代码...} 其中main字段是入口文件 写好README 一个完备的README文件是必要的,以便别人了解你的包是做什么用途。 确认registry 一般我们开发时会修改npm registry为https://registry.npm.taobao.org...

Gerrit常见命令及最佳实践

2019-09-16
阅读 2 分钟
5k
概述 本文记录了笔者在使用Gerrit(一种免费、开放源代码的代码审查软件)过程中的一些微小的经验,在这里做个简单的分享。 克隆工程 {代码...} 如果使用了Git代理,请将xx.xx.cn:29428换成代理后的ip:port {代码...} 创建develop分支 一般我们不会将代码直接提交到master分支,而是会选择在develop分支进行开发 {代码.....

拥抱webpack4,有效缩减构建时间57%+

2019-09-11
阅读 8 分钟
3.1k
最近有感觉到,随着系统模块数量的增加,wepack编译打包的速度越来越慢,于是我想给项目做一下优化升级,也借此机会系统地学习一下webpack4。

可能是最详细的UMD模块入门指南

2019-08-29
阅读 5 分钟
8.9k
学习UMD 介绍 这个仓库记录了一些关于javascript UMD模块规范的demo,对我学习UMD规范有了很大帮助,希望也能帮助到你。 回顾 之前也写了几篇关于javascript模块的博客,链接如下: 回头再看JS模块化编程 回头再看JS模块化编程之AMD sea.js的同步魔法 近几天准备总结一下javascript模块的知识点,所以建了这个Git仓库,...

Chrome远程调试手机端UC浏览器

2019-08-28
阅读 2 分钟
5k
接着要确认手机USB驱动程序是不是正常,可以在设备管理器中查看,如果设备左侧没有黄色感叹号,则说明正常。 如果不正常就需要手动安装了,给个链接:获取 Google USB 驱动程序