我在windows上开发了一个NodeJs(v10.19.0)服务器。我现在需要将它传输到运行Ubuntu 20.04的linux服务器上当我尝试启动服务器时,在"="上出现语法错误。
下面是完整的错误:
/puppeteer/scraping-bot.js:6
static websiteRegex = /^(https?://)?([da-z.-]+).([a-z.]{2,6})(/[wW]*)*$/gm
^
SyntaxError: Unexpected token =
at Module._compile (internal/modules/cjs/loader.js:723:23)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Module.require (internal/modules/cjs/loader.js:692:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object.<anonymous> (/routes/scraping.js:1:21)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
[nodemon] app crashed - waiting for file changes before starting...
下面是输出错误的代码:
class ScrapingBot {
static websiteRegex = /^(https?://)?([da-z.-]+).([a-z.]{2,6})(/[wW]*)*$/gm
static phoneRegex = /+?d{1,4}?[-.s]?(?d{1,3}?)?[-.s]?d{1,4}[-.s]?d{1,4}[-.s]?d{1,9}/g;
static addressRegex = /(([a-zA-Z-éÉèÈàÀùÙâÂêÊîÎôÔûÛïÏëËüÜçÇæœ'.]*s)d*(s[a-zA-Z-éÉèÈàÀùÙâÂêÊîÎôÔûÛïÏëËüÜçÇæœ']*)*,)*d*(s[a-zA-Z-éÉèÈàÀùÙâÂêÊîÎôÔûÛïÏëËüÜçÇæœ']*)+,s([d]{5})s[a-zA-Z-éÉèÈàÀùÙâÂêÊîÎôÔûÛïÏëËüÜçÇæœ']+/
...
}
如果有帮助的话,我用nano设置Git…
我已经试过替换"="
从这里可以看到,从Node 10开始不支持静态类字段->https://node.green/ES2022-features-static-class-fields
编辑@jonrsharpe也回答了这个