You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为什么导入React首字母大写、导入axios小写?是否存在技术原因?

两种命名差异的核心原因

这个差异同时涉及 JavaScript 通用命名惯例和 React 框架的特殊技术要求,具体可以拆分说明:

  • 普通工具库的命名仅属于社区惯例,无技术强制
    像 axios 这类纯功能工具库,导出的核心是一个可直接调用的函数或普通工具对象,社区默认遵循「普通函数/对象用小驼峰命名」的通用规范,所以大家导入时都会写 import axios from 'axios'。你哪怕改成首字母大写的Axios导入也完全可以正常运行,只是不符合通用代码规范而已。
  • 类、构造函数、框架核心用大驼峰是长期惯例
    JavaScript 发展过程中早就形成了约定:所有需要用new关键字调用的构造函数、Class类,统一用首字母大写的帕斯卡命名,用来和普通函数、变量做区分。React作为框架核心导出的本身就是一个包含多个方法的顶层对象,符合这个命名惯例的适用范围。

React 首字母大写存在实际技术强制

和普通工具库不同,React 导入名首字母大写不只是规范,还有实际的语法校验逻辑支撑:

JSX 语法的核心识别规则就是:标签首字母小写时,识别为原生HTML标签;首字母大写时,才会识别为自定义组件或 React 内置能力。

早期 React 版本要求所有用到 JSX 的文件必须显式导入React,因为 JSX 编译后本质是调用React.createElement()方法,如果你导入时写的是小写的react,编译时会因为找不到大写的React变量直接报错。
就算是现在用 React17+ 支持的自动 JSX 转换,不用再手动导入React,你写的所有自定义组件依然要求首字母大写,否则会被 React 判定为原生HTML标签,出现渲染异常。


内容的提问来源于stack exchange,提问作者j obe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 08:45:04