除了 vue 的双向数据绑定,这个 api 有更多的应用场景吗?
前端 SF 友们都来说说呗,不胜感激
我也提供一个。有些原生对象是不能直接修改的,此时也可以用 Object.defineProperty
,比如 navigator.language
:
Object.defineProperty(navigator, "language", {
get: () => $lang,
});
Object.defineProperty(navigator, "languages", {
get: () => ([$lang]),
});
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答5.2k 阅读✓ 已解决
1 回答3.4k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
不才恰巧有使用属性劫持来解决屎山问题的经历,并录拙文一篇:使用 Object.defineProperty 实现单例模式,解决 layui 组件覆盖导致的问题。
可将此用法归类为:强制实现单例模式。