-
Notifications
You must be signed in to change notification settings - Fork 324
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
你可能不知道的 6 个 babel 语法 #51
Comments
👍
发自网易邮箱大师
|
大爱 optional chaining,所以之前迫不及待升上了 beta 7 |
|
这里笔误了吗?求指导 var urls = document.querySelectorAll('a')
::Array.prototype.map(node => node.href) |
@sorrycc,将babel版本升级到最新的7.0.0-beta.32,nullish coalescing一直报错,求解 |
你好,请教下,给ant pro结合应该怎么用呢?只升级roadhog会报错 |
唉 用多了typescript 就不想碰babel 了 |
由于要整理基于 babel@7 的 babel preset "babel-preset-umi",故而对 babel 插件进行了一遍完整的梳理。期间发现一些之前不熟悉或是新引入的语法,个人觉得挺有用,介绍如下。虽然基本都处于 stage 1 和 stage 0 阶段,但不影响使用。
有啥特性
pipeline
语法是
|>
,类似其他语言,比如 Elm、LiveScript、OCaml 等,还有 UNIX 管道。还可以和 await 混用,以及传递额外参数,详见提案的例子。
nullish coalescing
语法是
??
。和||
操作符类似,但只判断左边的值是否为null
和undefined
,不判断""
、0
、NaN
、false
等,详见提案。适用于配默认值。
optional chaining
记得以前好像叫 guard operator,我更喜欢这个名字。用于防御性地检测对象、函数等,详见提案。
比如:获取对象属性。
获取函数执行结果的子属性。
判断函数存在再执行。
optional catch binding
catch 没有用到 error 对象时可以不用写。
function bind
Function bind 的新语法,可以 bind,也可以直接 call。
有个挺好的用法是可以直接用于类数组,比如:
do expression
简单的判断场景可以用三元操作符,复杂场景用 do expression 会比较合适。
另一个场景是可以用于 JSX:
怎么使用
可以直接用 babel@7-beta,也可以用 umi 或者 roadhog@2。
(完)
The text was updated successfully, but these errors were encountered: