【发布时间】:2016-02-24 18:33:25
【问题描述】:
在 Javascript 中观察数组的变化是相对简单的。
我使用的一种方法是这样的:
// subscribe to add, update, delete, and splice changes
Array.observe(viewHelpFiles, function(changes) {
// handle changes... in this case, we'll just log them
changes.forEach(function(change) {
console.log(Object.keys(change).reduce(function(p, c) {
if (c !== "object" && c in change) {
p.push(c + ": " + JSON.stringify(change[c]));
}
return p;
}, []).join(", "));
});
});
但是,我最近读到 Array.observe 已被弃用,我们应该使用 proxy object instead.
我们如何检测 Proxy 对象数组的变化?我找不到任何示例,有人有兴趣详细说明吗?
【问题讨论】:
-
我在 Google 中寻找“代理观察”,得到了这个gist.github.com/ebidel/1b553d571f924da2da06
-
请注意,代理目前仅在 Firefox 和一些转译器中受支持,您不会在生产代码中使用它。
-
现在所有主流浏览器都支持代理,除了 Internet Explorer。
标签: javascript