React 组件命名规范:首字母大写才能正确渲染

9次阅读

React 组件命名规范:首字母大写才能正确渲染

react 要求自定义组件名必须以大写字母开头,否则 jsx 会将其识别为原生 html 标签(如 `` 被当作 `` 未知标签处理),导致组件不渲染且无报错提示。修正命名并修复拼写错误后即可正常显示。

react 中,jsX 对组件名称的大小写极为敏感——这是初学者最容易忽略却影响最直接的规则之一。当你定义 function bannner() { … } 并在 JSX 中写成 ,React 会将其解析为一个小写 dom 标签(类似

),而非你期望的自定义组件。由于浏览器不存在 这个原生标签,最终渲染结果为空白,控制台也通常不会抛出明显错误,造成“代码运行无反应”的困惑。

✅ 正确做法是:所有自定义组件名首字母必须大写(如 Banner, Cart),这是 React 的强制约定,也是 JSX 编译器识别组件的关键依据。

此外,原始代码中还存在两处关键问题需同步修复:

  • 拼写错误:pixhero 应为 prixhero(变量声明与使用需一致);
  • JSX 语法细节:

    {title}

    等返回语句无需括号包裹(虽非错误,但推荐简洁写法);

    • 必须闭合,且嵌套结构需保持合法 html 语义。

    以下是修正后的完整可运行代码:

    function Banner() {   const title = "c'est pur ?";   return 

    {title}

    ; } function Cart() { const prixbedo = 10; const prixhero = 20; // ✅ 修正变量名拼写(原代码中误写为 pixhero) const prixcoc = 70; return (

    Panier

    • bedo : {prixbedo}$
    • heroïne : {prixhero}$
    • cocaïne : {prixcoc}$
    ); } ReactDOM.render(
    , document.getElementById("root") );

    ⚠️ 注意事项:

    • 确保 HTML 文件中已正确引入 React、ReactDOM 及 Babel(用于 JSX 转译),例如通过 cdn
        
    • 所有组件函数必须在 ReactDOM.render() 调用前声明,避免变量提升作用域问题。

    遵循组件命名规范是 React 开发的第一道门槛,看似微小,却直接决定 ui 是否可见。养成 PascalCase 命名习惯(如 UserProfile, Productlist),不仅能规避渲染失败,也为团队协作和代码可维护性打下坚实基础。

text=ZqhQzanResources