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

React组件在VSCode中显示灰色且无法正常加载渲染的问题求助

搞定你的React组件加载问题!

兄弟,折腾5小时确实够糟心的!别慌,这问题其实是React的一个基础规则没注意到,咱们一步步来解决:

核心原因:React组件命名必须首字母大写

React有个硬性规则:自定义组件的名称必须以大写字母开头。如果用小写开头,React会把它当成<div>这类原生HTML标签处理,自然就识别不出你的自定义组件了——这就是VSCode里它变灰色、渲染不出来的根本原因。

具体修改步骤:

  1. 修改counterr.js的组件名和导出
    把组件名改成首字母大写的Counterr,导出也对应调整:
import React from 'react'
// 组件名首字母大写
function Counterr () {
  return (
    <div> hello from counter </div>
  );
}
// 导出大写的组件
export default Counterr;
  1. 修改App.js的导入和组件使用
    导入时用大写的组件名,使用组件标签也必须大写:
// 这里React要大写(规范要求,避免潜在问题)
import React from 'react';
import './App.css';
// 导入大写的Counterr组件
import Counterr from './components/counterr'
function App() {
  return (
    <div> 1234 <Counterr/> 5678 </div>
  )
}
export default App;

额外检查项:

  • 确认文件路径:./components/counterr要保证counterr.js确实放在src/components文件夹下,路径错误也会导致导入失败(不过这次主要是命名问题,但顺手确认下更稳妥)。
  • App.js里的import react from 'react';改成import React from 'react';,虽然React 17+支持不用导入React写JSX,但保持大写是规范,能避免一些奇怪的兼容问题。

改完这些,你的组件应该就能正常渲染啦!

内容的提问来源于stack exchange,提问作者Debaditya Sinha

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 18:47:49