Keep 主题更新 tools 功能报错 btoa is not defined
-
前言
不是专业前端,此问题通过 Chat GLM 解决 -
更新
1 | 24-06-17 初始记录 |
问题
Keep 主题更新 tools 功能,但是访问 tools 模板页面报错:btoa is not defined。
原因
根据 Chat GLM 的描述。
如果你遇到了
btoa is not defined
的错误,这意味着btoa
函数在你的环境中不可用。btoa
是浏览器环境中用于将字符串编码为 Base64 的函数,而在 Node.js 环境中没有这个全局函数。在 Node.js 中,你可以使用
Buffer
类来实现相似的功能。下面是一个不使用btoa
的替代方案,它可以在 Node.js 和浏览器环境中都工作。
解决
找到 node_module
中 keep 主题的安装位置:一般在这个地方(…/blog/node_modules/hexo-theme-keep/layout/_template
)。在这个文件夹中的 tools-nav.ejs
为更新后的 tools 页面模板文件。
修改开始部分代码,注释第一行,改成使用 Buffer 转换的方式(这部分也是 Chat GLM 给出的建议):
1 | <% |
评论
评论插件加载失败
正在加载评论插件