问题描述
我在 Node.js 项目中遇到了一个奇怪的问题。我有一个类,需要隐藏他的一些方法。 MDN 说我需要将 #
放在方法名称的开头。这是无效的!我有 13.6 节点版本。这是我的代码:
module.exports.class = class ExtendedEmbed extends MessageEmbed {
static #validateColors(colors) {
// Do something;
}
static #validateTemplates() {
// Do something...
}
// Other methods...
/**
* @param {String} color
* @param {String} template
* @param {import('discord.js').MessageEmbedOptions} data
* @param {import('./index').ExtendedEmbedOptions} options
*/
constructor(color,template,data = {},options = {}) {
console.log(ExtendedEmbed.#validateColors(options.colors);
}
}
错误如下:
C:\Projects\EmbedUtilities\src\ExtendedEmbed.js:4
static #validateColors(colors) {
^
SyntaxError: Unexpected token '('
解决方法
使用私有方法而不是静态方法一次怎么样?
private validateTemplates() {
// Do something...
}