在新的反应项目中使用 craco - 什么会导致此错误? (UnhandledPromiseRejectionWarning: TypeError [ERR_INVALID_ARG_VALUE]: ...)

Using craco in new react project - what would cause this error ? (UnhandledPromiseRejectionWarning: TypeError [ERR_INVALID_ARG_VALUE]: ...)

总结

在创建一个新项目并尝试将 craco 与它一起使用时,我遇到了一个我不明白的错误。

我有什么

错误看起来像这样...

$ craco start
(node:125281) UnhandledPromiseRejectionWarning: TypeError [ERR_INVALID_ARG_VALUE]: The argument 'id' must be a non-empty string. Received ''
    at Module.require (internal/modules/cjs/loader.js:1084:11)
    at require (internal/modules/cjs/helpers.js:73:18)
    at getConfigAsObject (/home/glaucon/src/20210416testB/my-app/node_modules/@craco/craco/lib/config.js:46:20)
    at loadCracoConfigAsync (/home/glaucon/src/20210416testB/my-app/node_modules/@craco/craco/lib/config.js:69:34)
    at Object.<anonymous> (/home/glaucon/src/20210416testB/my-app/node_modules/@craco/craco/scripts/start.js:22:1)
    at Module._compile (internal/modules/cjs/loader.js:1200:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1220:10)
    at Module.load (internal/modules/cjs/loader.js:1049:32)
    at Function.Module._load (internal/modules/cjs/loader.js:937:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
(Use `node --trace-warnings ...` to show where the warning was created)
(node:125281) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
(node:125281) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
Done in 1.06s.


我做了什么

为了达到这一点,我所做的是......

$ yarn global remove create-react-app
$ mkdir 20210416testB
$ cd 20210416testB
$ npx create-react-app my-app
$ cd my-app/
$ yarn add @craco/craco

修改为 package.json 为 follows ...

"scripts": {
-   "start": "react-scripts start",
+   "start": "craco start",
-   "build": "react-scripts build",
+   "build": "craco build"
-   "test": "react-scripts test",
+   "test": "craco test"
}

然后完成

$ yarn start

此时我得到了上面的错误所以我

$ rm -rf ./node_modules/
$ yarn install
$ yarn start

但是还是出现上面的错误

如有任何建议,我们将不胜感激。

请确保 craco.config.js 文件位于您的根目录中 :)