gpt4 book ai didi

node.js - NodeJS 中是否允许使用装饰器?

转载 作者:行者123 更新时间:2023-12-03 12:15:11 24 4
gpt4 key购买 nike

我正在尝试使用终端在 NodeJS 中运行以下代码

function addStringToName(target, name, descriptor) {
const fn = descriptor.value;
descriptor.value = wrestler => {
fn.call(target, wrestler + ' is a wrestler');
};
}

class Wrestler {
@addStringToName
setName(name) {
this.name = name;
}
sayName() {
console.log(this.name);
}
}

const w = new Wrestler();
w.setName('Macho Man');
w.sayName();

得到以下错误

Error

如果是的话,可以在 NodeJS 中使用装饰器吗?编写的代码有什么问题?

最佳答案

抱歉不行。您必须使用 TypeScript 才能启用装饰器。此外,即使是 TypeScript 本身也不支持它。您必须拥有 target: "ES5"至少和 "experimentalDecorators": true .

你可以在这里找到更多关于装饰器和 TypeScript 的信息:https://www.typescriptlang.org/docs/handbook/decorators.html

关于node.js - NodeJS 中是否允许使用装饰器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61712888/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com