为什么 React 项目名称不能包含大写字母?

Run*_*hya 6 javascript npm reactjs

尝试在 React 中创建新项目“newRecipeApp”时收到以下消息。

npx: installed 91 in 29.359s
Could not create a project called "newRecipeApp" because of npm naming restrictions:
  *  name can no longer contain capital letters
Run Code Online (Sandbox Code Playgroud)

这是什么原因?为什么 npm 中对大写字母有命名限制?

小智 5

您可以阅读此https://github.com/facebook/create-react-app/issues/2165 NPM 包的名称中不允许使用大写字符,这似乎是因为 unix 文件系统区分大小写,这创建了“混乱和不可移植的软件”。

这在用作便携式软件的库的上下文中非常有意义;但是,在谈到终端应用程序时,尤其是那些在不区分大小写的环境(如 Windows)中开发的应用程序时,就不是那么多了。

PR1652 引入了使用 validate-npm-package-name 的项目名称验证,假设是为了避免输出在名称中显示空格的问题。

“React 应用程序”作为一个不同的(例如:不太关注“可移植性”)类别的软件,是否应该有这些相同的限制?

例如,我不是在尝试制作 npm 包/库。我正在尝试使用 create-react-app 来生成一个应用程序,我需要遵循我公司的应用程序命名约定,该约定要求在应用程序名称中使用大写字母。


koo*_*oos 0

这主要是因为 NPM 不允许使用大写字母。因此,为了确保与 NPM 命名方案的兼容性,他们可能已经这样做了。