首页 > 解决方案 > 将元素名称作为字符串变量反应

问题描述

在浏览其中一个 React UI 库的源代码时,我遇到了这个代码模式(我简化了):

function Test() {
  let Button = "button";
  // ...
  return <Button>Click me</Button>;
}

这是怎么回事 - 为什么会这样?:)

标签: javascriptreactjs

解决方案


上面的 JSX 被 React 解释为:

function Test() {
  let Button = "button";
  return React.createElement(
    Button,
    null,
    "Click me"
  );
}

Button只是一个string变量,设置为"button",它被传递给React.createElement(...).


推荐阅读