首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >type元素类型无效-- ES6在传递道具时破坏语法错误。

type元素类型无效-- ES6在传递道具时破坏语法错误。
EN

Stack Overflow用户
提问于 2018-12-29 14:24:06
回答 2查看 218关注 0票数 3

我正在构建一个React应用程序,并试图更新一些JavaScript函数以使用ES6析构箭头语法。

Index.js文件:

代码语言:javascript
运行
复制
import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';

function TestMe() {
  const name = "User";
  const message = "Welcome!";
  return (
    <div>
      <Hello name={name} />
      <Message message={message} />
    </div>
  );
}

ReactDOM.render(<TestMe/>, document.querySelector('#root'));

const Hello = ({ name }) => (
    <span>Hello, {name}</span>
);

function Message(props) {
  return (
    <div className="message">
      {props.message}
    </div>
  );
}

消息函数将呈现,但Hello函数将在浏览器中抛出以下错误(在成功构建之后):

“元素类型无效:期望字符串(用于内置组件)或类/函数(用于复合组件),但得到:未定义。您可能忘记从定义在其中的文件导出组件,或者您可能混淆了默认导入和命名导入。

检查TestMe的呈现方法。""“

这是我的package.json,以防万一:

代码语言:javascript
运行
复制
{
  "name": "jsx-exercises",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "eslint": "^5.6.0",
    "react": "^16.7.0",
    "react-dom": "^16.7.0",
    "react-scripts": "2.1.2"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },
  "browserslist": [
    ">0.2%",
    "not dead",
    "not ie <= 11",
    "not op_mini all"
  ]
}

我为什么要犯这个错误?

EN

Stack Overflow用户

发布于 2018-12-29 14:37:59

您必须将Hello移动到文件的顶部,因为TestMe看不到这个const。函数javascript无论如何都可以看到,因为它是函数声明

票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53970407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档