如何解决如何修复cb.apply不是函数,npx + preact-cli
我正在尝试使用preact-cli
创建一个新项目:
npx preact-cli create typescript temp
npm ERR! cb.apply is not a function
我正在使用以下版本:
- 节点v15.0.1
- npm 7.0.3
- npx 10.2.2
在撰写本文时,npm上发布的preact-cli的最新版本为3.0.3。
我尝试解决的问题:
...
7 http fetch GET 304 https://registry.npmjs.org/preact-cli 147ms (from cache)
8 silly pacote tag manifest for preact-cli@latest fetched in 167ms
9 verbose stack TypeError: cb.apply is not a function
9 verbose stack at /home/lhk/.npm-global/lib/node_modules/npx/node_modules/npm/node_modules/graceful-fs/polyfills.js:287:18
9 verbose stack at FSReqCallback.oncomplete (node:fs:184:5)
显然这是graceful-fs/polyfills.js
中的错误。好的,所以我看了一下,它在一个名为statFix
的函数中。显然可以解决与“旧版本的Node”不兼容的问题。搜寻statFix
让我进入this site。他们说只是注释掉statFix函数的用法。我尝试过,但错误仍然存在。
所以我想我应该去npm install -g preact-cli
,看看效果更好。警告和不赞成使用的消息很长。警告之一是:
npm WARN deprecated fsevents@1.2.13: fsevents 1 will break on node v14+ and Could be using insecure binaries. Upgrade to fsevents 2.
对我来说,这似乎是犯罪者。它甚至明确表示它将在节点v14 +上中断(我在v15上)。
是否可以在节点版本大于v14的情况下使用preact-cli?
更新: 我经历了卸载节点v15而安装v14 LTS的痛苦。 问题保持不变。它似乎与v15没有直接关系。 我还相应地更新了问题标题。
解决方法
Preact 接受 Node v12 作为最新版本。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。