小编tig*_*mos的帖子

如何使 JavaScript Proxy 的处理程序方法成为异步函数?

请参阅 Mozilla 文档中有关Proxy()的内容

一个简单的代理示例:

const handler = {
  get: function(target, prop, receiver) {
    return Reflect.get(target, prop, receiver);
  },
  set: function(target, prop, receiver) {
    return Reflect.set(target, prop, receiver);
  }
};

const proxy = new Proxy(target, handler);
Run Code Online (Sandbox Code Playgroud)

get我在and中有一些异步函数set,所以我想让getsetto 成为async函数。

我期望类似的东西:

const handler = {
  get: async function(target, prop, receiver) {
    await foo();
    return Reflect.get(target, prop, receiver);
  },
  set: async function(target, prop, receiver) {
    await bar();
    return Reflect.set(target, prop, receiver);
  }
};

const …
Run Code Online (Sandbox Code Playgroud)

javascript handler async-await es6-proxy

5
推荐指数
1
解决办法
1388
查看次数

标签 统计

async-await ×1

es6-proxy ×1

handler ×1

javascript ×1