Angular Typescript:找不到名称';代理';

Angular Typescript:找不到名称';代理';,angular,typescript,ecmascript-6,Angular,Typescript,Ecmascript 6,我需要声明一个类型为Proxy的新变量,它来自ES6规范: myProxy: Proxy; 但我得到了下一个错误: 找不到名称“Proxy” 如何修复它?假设您将目标设置为es2015,或者使用lib选项包含es2015的库,您可以创建代理。诀窍在于代理不是一个类型,而是一个构造函数。从es2015 lib: interface ProxyConstructor { revocable<T extends object>(target: T, handler: ProxyH

我需要声明一个类型为Proxy的新变量,它来自ES6规范:

myProxy: Proxy;
但我得到了下一个错误:

找不到名称“Proxy”


如何修复它?

假设您将目标设置为
es2015
,或者使用
lib
选项包含
es2015
的库,您可以创建
代理。诀窍在于代理不是一个类型,而是一个构造函数。从es2015 lib:

interface ProxyConstructor {
    revocable<T extends object>(target: T, handler: ProxyHandler<T>): { proxy: T; revoke: () => void; };
    new <T extends object>(target: T, handler: ProxyHandler<T>): T;
}
declare var Proxy: ProxyConstructor;
foo
的类型将与目标对象的类型相同

let foo = new Proxy({ value: 0 }, {
    get: (v) => v.value * 2
});