SyntaxError: Invalid regular expression flags
sdlyfjx opened this issue · comments
已知问题。由于腾讯云SCF环境只有NODEJS8.9.0版本。该版本不支持正则表达式中的/s模式(默认就是单行模式?),只有/m /i /g三种模式。所以这里用了/s后会导致语法错误。
暂时解决方案就是自己手动修改node_modules\hexo\lib\plugins\filter\after_render\meta_generator.js:10
里面的那个报错的正则表达式,把最后的/s中的s去掉即可。
已经反馈给@hexo官方,期待他们的修复。
hexojs/hexo#4123
hexo官方已经放弃修复了。所以有位盆友提供了解决方案,把那句替换为
return data.replace(/<head>(?!<\/head>)[^]*?.+?[^]*?<\/head>/, str => str.replace('</head>', `${hexoGeneratorTag}</head>`));