关于MacOS在npm安装包的时候报错no template named 'remove_cv_t

2022-06-17 08:11:03 浏览数 (1)

问题现象

今天我在给自己的 docusaurus2 项目 npm i 安装以来的时候,发生以下报错。在网上也没找到有用的办法,所以根据自己的解决过程记录一下。

当我在 npm i 安装以来的时候出现 no template named 'remove_cv_t' in namespace 'std'; did you mean 'remove_cv'?的错误,原因就是 node 中的一个类库的模板找不到,应该是由于版本的原因导致名称不一致。但是我重新创建的 docusaurus2 项目是可以正常启动的。这就说明是依赖包的问题,我们从途中能够看到是在编译 nodejieba 的时候报的错,说明就是 nodejieba 的问题。

解决办法

单独安装 nodejieba 即可解决,具体原因就是因为不同的 node 版本支持的 nodejieba 版本不同。原来项目中的 package.json 中定义的 nodejieba 版本太低,通过单独安装 nodejieba 即可下载到匹配的 nodejieba 版本。同时 package.json 中的信息也会同步更新。

这个问题启示我们,在进行项目异地编译的时候一定要注意node版本的兼容性,尽量保证版本一致。避免此类的问题的出现。

0 人点赞