51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

记录gitbook本地生成静态文件/静态网站过程中的一些异常及处理方法(Windows平台)

流行就是一个轮回,从静态到动态,再回到静态。原因可能有很多,性能,成本,安全,易维护......总之,部署和使用静态网站的人越来越多了。Gitbook 提供了一整套静态网站的解决方案,插件丰富,对于像编写一些内部使用手册、说明文档的需求,可谓是得心应手。本文汇总记录 Windows 系统下安装和使用 gitbook 过程中可能会出现的一些异常问题及解决方法(内容收集整理自互联网)。

首先,简要介绍下 gitbook 安装及使用的基本步骤(熟悉的朋友可自行跳过):

  1. 安装:npm install -g gitbook-cli
  2. 验证:gitbook -V
  3. 初始化 gitbook 项目:gitbook init
  4. 安装插件:gitbook install
  5. 构建静态文件:gitbook build
  6. 本地运行静态网站:gitbook serve --port 3000
  7. 上传到网站空间:将 _book 目录打包上传
  8. 发布到 gitbook.com:gitbook publish

在这个过程中,可能会出现如下异常问题提示,可参照解决方法处理。

**问题1:**步骤2验证阶段,可能报"TypeError:cb.apply is not a function"的错误,见下图1。

记录gitbook本地生成静态文件/静态网站过程中的一些异常及处理方法(Windows平台)
P1.gitbook -V 错误代码"TypeError:cb.apply is not a function"

解决办法:

根据提示,打开对应路径下的 polyfills.js 文件,并定位到第 62-64 行,注释掉即可。

记录gitbook本地生成静态文件/静态网站过程中的一些异常及处理方法(Windows平台)
P2.注释掉 polyfills.js 文件中的相关代码行

// fs.stat = statFix(fs.stat)
// fs.fstat = statFix(fs.fstat)
// fs.lstat = statFix(fs.lstat)

**问题2:**步骤3初始化阶段,可能报"TypeError [ERR_INVALID_ARG_TYPE]: The "data" argument must be of type string or an instance of Buffer, TypedArray, or DataView. Received an instance of Promise"错误,见下图3。

记录gitbook本地生成静态文件/静态网站过程中的一些异常及处理方法(Windows平台)
P3.gitbook init 错误代码"TypeError ...: The "data" argument..."

解决办法:

打开"C:\Users\{用户名}\.gitbook\versions\{version}\lib\init.js"文件(大括号内的数据请自行替换),定位到第 72 行:

return fs.writeFile(filePath, summary.toText(extension));
替换为
return summary.toText(extension).then(stx=>{return fs.writeFile(filePath, stx);})

记录gitbook本地生成静态文件/静态网站过程中的一些异常及处理方法(Windows平台)
P4.修改 init.js 文件中的相关代码

**问题3:**步骤4安装插件阶段,部分插件可能安装失败,报"Error: Couldn't locate plugins "sitemap-general, favicon, 3-ba", Run 'gitbook install' to install plugins from registry."错误,如下图5。

记录gitbook本地生成静态文件/静态网站过程中的一些异常及处理方法(Windows平台)
P5.gitbook install 错误代码"Error: Couldnot locate plugins..."

解决办法:

通过 npm 工具逐个手动安装。

npm install gitbook-plugin-sitemap-general --save
npm install gitbook-plugin-favicon --save
npm install gitbook-plugin-3-ba --save

如果你在安装和使用 gitbook 过程中遇到过其他问题,欢迎留言讨论哦。

赞(3)
未经允许不得转载:工具盒子 » 记录gitbook本地生成静态文件/静态网站过程中的一些异常及处理方法(Windows平台)