> 技术文档 > 【npm 解决】---- TypeError: crypto.hash is not a function

【npm 解决】---- TypeError: crypto.hash is not a function


1. 报错

【npm 解决】---- TypeError: crypto.hash is not a function

2. 报错代码

error when starting dev server:TypeError: crypto.hash is not a function at getHash (file:///F:/taro-react-rui/ant-design-vue@4.2.6/vite-project/node_modules/vite/dist/node/chunks/dep-BHkUv4Z8.js:2788:21) at getLockfileHash (file:///F:/taro-react-rui/ant-design-vue@4.2.6/vite-project/node_modules/vite/dist/node/chunks/dep-BHkUv4Z8.js:11673:9) at getDepHash (file:///F:/taro-react-rui/ant-design-vue@4.2.6/vite-project/node_modules/vite/dist/node/chunks/dep-BHkUv4Z8.js:11676:23) at initDepsOptimizerMetadata (file:///F:/taro-react-rui/ant-design-vue@4.2.6/vite-project/node_modules/vite/dist/node/chunks/dep-BHkUv4Z8.js:11137:53) at createDepsOptimizer (file:///F:/taro-react-rui/ant-design-vue@4.2.6/vite-project/node_modules/vite/dist/node/chunks/dep-BHkUv4Z8.js:34611:17) at new DevEnvironment (file:///F:/taro-react-rui/ant-design-vue@4.2.6/vite-project/node_modules/vite/dist/node/chunks/dep-BHkUv4Z8.js:35375:109) at Object.defaultCreateClientDevEnvironment [as createEnvironment] (file:///F:/taro-react-rui/ant-design-vue@4.2.6/vite-project/node_modules/vite/dist/node/chunks/dep-BHkUv4Z8.js:35794:9) at _createServer (file:///F:/taro-react-rui/ant-design-vue@4.2.6/vite-project/node_modules/vite/dist/node/chunks/dep-BHkUv4Z8.js:28373:132) at async CAC. (file:///F:/taro-react-rui/ant-design-vue@4.2.6/vite-project/node_modules/vite/dist/node/cli.js:573:18)

3. 报错原因

【npm 解决】---- TypeError: crypto.hash is not a function

从安装依赖的警告可以看出,vite@7.0.6 版本的 node 版本 ‘^20.19.0 || >=22.12.0’,还有 @vitejs/plugin-vue@6.0.1 版本的 node 版本 ‘^20.19.0 || >=22.12.0’,但是我本地使用的 node 是 18.17.0。因此切换一个满足要求的高版本 node 就可以解决。

4. 使用 nvm 进行的 node 版本管理

查询当前版本,以及本地安装了那些版本,切换到满足要求的高版本。

【npm 解决】---- TypeError: crypto.hash is not a function

5. 解决问题

【npm 解决】---- TypeError: crypto.hash is not a function
【npm 解决】---- TypeError: crypto.hash is not a function

6. 总结

其实问题很简单,而且安装依赖的时候也警告了,只要按照提示步骤,解决问题,就可以。

GPS导航