最后,JSX只需使用createElement方法创建一个React元素。
<FormButton color="green" buttonSize={10}> Submit </FormButton>
将转换为-
React.createElement( FormButton, {color: 'green', buttonSize: 10}, 'Submit’ )
也可以添加自闭合标签。
自定义的react元素必须以首字母大写命名,以便React能够区分html元素和react元素。
随着Jsx转换为React.createElement,React库必须在范围内。为此,如果需要使用jsx,我们必须导入React。
元素的内部属性可以使用点运算符访问。
<FormComponent.TextArea size=”50”/>
常规表达式不能用于React元素的类型。首先,我们必须将其分配给大写变量,然后才能使用该变量。
import React from 'react'; import { Cricket, Football } from './sportsTypes'; const components = { cricket: Cricket, football: Football }; function Story(props) { //下面的表达式是错误的,不能以这种方式使用。 return <components[props.cricket] player={props.name} />; }
为了使其工作,我们将其分配给大写字母-
import React from 'react'; import { Cricket, Football } from './sportsTypes'; const components = { cricket: Cricket, football: Football }; function Story(props) { //正确!JSX类型可以是大写的变量。 const Sport = components[props.cricket]; return <Sport player={props.name} />; }
jsx中的道具用法
道具可以是jsx表达式
<Player score={4+6+4} />
得分道具将计算为14
条件语句(如if,for)不能直接在jsx代码中使用,但可以单独使用,其结果变量可以在jsx中使用。
道具可以是字符串文字-
<Player name={‘Steve’}/>
要么
<Player name=”Steve”/>
如果未提供,则props值将默认为true。这只是为了与html的默认行为兼容。
<Player isPlaying />
等于
<Player isPlaying={true} />
散布算子可以用来传递道具-
<Player {…props} />
开始标签和结束标签之间的内容是jsx子元素。
<Player> Steve </Player>
子代也可以是jsx表达式或函数。如果jsx子级属于Boolean null,undefined类型,则将忽略它们。
logstash 已经拥有数以百计的插件,并提供了一站式的部署方式,极大的方便了新手入门。但在实际运用上,我们终究会碰上其他人还没碰到过,或者碰到过但没公布出来完整解决方案的问题。可能是某些环境适配,可能是某个环节的性能不佳,可能是某处硬编码设置不合理,等等等等。这时候,了解一些 logstash 的代码逻辑,了解 logstash 之所以做出当前选择的缘由。是有助于解决实际问题的。 此外,log
问题内容: 我试图了解如何使用Golang和forks。情况如下,我在写一个依赖于library的库,这不是我的。 由于缺少我需要的一些方法,因此将其分叉到。但是,我不能只是这样做,库引用了自己,所以它坏了。 在本文中,他们提供了可能的解决方案: 现在,这充其量是hacky。从库代码中无法得知依赖项来自其他存储库。任何使用我的图书馆的人都无法使其正常运行。 由于dep有望成为正式的依赖管理器。我发
在这本教程的一开始 (第 6 章, 构建脚本基础) 你已经学习了如何创建简单的任务. 然后你也学习了如何给这些任务加入额外的行为, 以及如何在任务之间建立依赖关系. 这些仅仅是用来构建简单的任务. Gradle 可以创建更为强大复杂的任务. 这些任务可以有它们自己的属性和方法. 这一点正是和 Ant targets 不一样的地方. 这些强大的任务既可以由你自己创建也可以使用 Gradle 内建好的
本文向大家介绍深入了解Python在HDA中的应用,包括了深入了解Python在HDA中的应用的使用技巧和注意事项,需要的朋友参考一下 Event Handler 在HDA中,要创建Python脚本,需要先选择一个事件处理器(EventHandle),他表示你要在什么时候执行你现在所创建的脚本命令 On Created (在节点创建时,执行脚本) 如选择此项编辑Python脚本,Python将会在
深入了解Bundle和Map 原文链接 : The mysterious case of the Bundle and the Map 译文出自 : 开发技术前线 www.devtf.cn 译者 : yinna317 校对者: chaossss 状态 : 翻译完成 前言 因为往Bundle对象中放入Map实际上没有表面上看起来那么容易。 这篇博客是在Eugenio @workingkills Ma
本文向大家介绍深入了解MyBatis参数,包括了深入了解MyBatis参数的使用技巧和注意事项,需要的朋友参考一下 深入了解MyBatis参数 相信很多人可能都遇到过下面这些异常: "Parameter 'xxx' not found. Available parameters are [...]" "Could not get property 'xxx' from xxxClass. Caus