sdlyfjx / HexoOnSCF

A Hexo Distributed On TencentCloud SCF And COS.使用腾讯云COS托管静态网站,将Hexo搭建于SCF上的项目。

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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>`));