【发布时间】:2018-03-03 15:11:31
【问题描述】:
将 eslint 与 React 配置一起使用时,我在使用 Object.defineProperty 时收到 错误。错误说:
避免使用
Object.defineProperty,而是使用Reflect.defineProperty。 (首选反射)
在 eslint documentation of prefer-reflect 他们说它已被弃用,原因是:
这条规则的初衷现在似乎被误导了,因为我们已经明白
Reflect方法实际上并不是要替换规则建议的Object对应物,而是作为低级原语存在代理,以便复制各种先前存在的功能的默认行为。
那么我的问题是:使用Reflect.defineProperty 代替Object.defineProperty 有什么优势吗?
【问题讨论】:
-
是的,弃用通知解释得很好。你不应该使用这个规则。
标签: javascript ecmascript-6 es6-proxy