javascript - 将元素名称作为字符串变量反应
问题描述
在浏览其中一个 React UI 库的源代码时,我遇到了这个代码模式(我简化了):
function Test() {
let Button = "button";
// ...
return <Button>Click me</Button>;
}
这是怎么回事 - 为什么会这样?:)
解决方案
上面的 JSX 被 React 解释为:
function Test() {
let Button = "button";
return React.createElement(
Button,
null,
"Click me"
);
}
Button
只是一个string
变量,设置为"button"
,它被传递给React.createElement(...)
.
推荐阅读
- angular - 如何将参数从 Nativescript 中的兄弟路由传递给子路由
- spring - Gatling 不适用于 SpringBoot 2.0.1.RELEASE
- php - SMTP 错误:无法连接到服务器:(0)并且邮件发送成功但没有收到电子邮件
- spring-boot - Spring Boot elasticsearch产生警告:找不到id的传输响应处理程序
- npm - 使用不正确的 index.js 源路径为 React 应用程序运行构建
- java - Kafka:并行有界批处理
- css - Bootstrap 4,Form-Inline 在 XS 视图上不对齐
- ruby-on-rails - 使用酶测试 React 组件取决于头部/元标记
- android - 使用 runTransaction 时,我的权限被拒绝
- java - 签署文档时 PDFBox 2.0.8 问题