《JavaScript 20 年》中文在线版发布

2020-09-23 · xiejiahe · JavaScript
Puppeteer 非无头模式全屏解决

在做一些测试/爬虫时会用到非无头模式进行Debug,但有个问题默认情况打开浏览器窗口只会显示一部分,这就不爽了。解决办法是通过 launch 参数里的 args 将一系列参数传递给浏览器启动即可。 下面传递了2个参数给 args, 针对 windows 需要传递 --start-maximized, mac 上是 --kiosk

2020-05-26 · xiejiahe · JavaScript
Puppeteer: Evaluation failed: ReferenceError: cov_16gqc9ptx4 is not defined

Puppeteer:Evaluation failed: ReferenceError: cov_16gqc9ptx4 is not defined 出现问题 在写自动化测试时遇到这么个问题,记录下。 无法使用 evaluate / eval 等浏览器执行环境的API。 这个问题整的我怀疑人生了, 看下面最小化代码 这段代码执行

2020-05-12 · xiejiahe · JavaScript
ES2020 - 逻辑分配运算符

临睡之前看看tc39 提案~ ES2020 也就是ES11的新语法, 目前在 Stage3 阶段, 实际上是一个语法糖。 目前包含3个 // NO.1, 如果 a 为 falsy , 把 b 赋值给 a a ||= b // NO.2, 如果 a 和 b 都为 truthy, 把 b 赋值给 a a &&= b // NO.

2020-04-27 · xiejiahe · JavaScript
解决 jest 不支持别名alias

在开发项目中我们经常会看到下面写法// src/index.jsx import App from '@/App' 等价于 import App from 'src/App' 如果我们在写单元测试时候引入了别名模块会抛出错误 ● Test suite failed to run Cannot find module '

2020-04-20 · xiejiahe · JavaScript
微信小程序开发技巧

开发小程序这么久了,整理了一些技巧清单,分享出来。 1、backgroundColor 配置无效 页面配置中 backgroundColor 可以设置窗口颜色: { "backgroundColor": "#f2f2f2" } 这么设置完之后发现一点效果都没有,仔细研究一番,原来窗口颜色指的是最底层。(真想说句:卧槽~)

2019-11-16 · xiejiahe · JavaScript
JavaScript - 可选链操作符

链接操作符目前在第三阶段中, 2017年7月TC39委员会就已经开始讨论了,如今过去2年,马上就面世了。 概述 在寻找对象树结构深处的属性时,通常需要检查中间节点是否存在: const street = user.address && user.address.street; 此外,许多API返回一个对象或null/undef

2019-07-31 · xiejiahe · JavaScript
JavaScript - 空位合并运算符

?? 是一种新的运算符,目前在 Stage3阶段中,很快就面世了。 概述 执行访问属性时,如果该属性访问的结果是null 或 undefined,通常需要给出一个默认值,目前在JavaScript中常见的做法是使用 || 运算符, 参见如下代码: const response = { settings: { null

2019-07-27 · xiejiahe · JavaScript
路由切换完美取消HTTP请求

通常在SPA应用中大多数情况路由跳转不会进行刷新整个页面,这样就会导致当前页面请求未处理完成而抛出错误异常。 并且这个需求是离不开SPA应用的,在写开源项目时正好有这个需求,分享下我的实现思路。 以react为示例,其他框架异同。 先看看如何取消单个请求 取消单个请求非常简单,只需要配置cancelToken参数。 const

2019-05-30 · xiejiahe · JavaScript React
展望ES2019,8个新特性

又快到6月份啦,还记得吗,ECMAScript 每年6月都会发布一个版本。 2019到啦,来看看已完成的提案! 新特性 🎉🎉🎉 Optional catch binding JSON superset Symbol.prototype.description Function.prototype.toString rev

2019-02-18 · xiejiahe · JavaScript