reactjs - 当属性具有相同名称时,是否有 JSX 快捷方式为该属性分配值?

标签 reactjs jsx

如果我正在编写一些 JSX,是否有这样的快捷方式:

<MyComponent myProperty={myProperty} />

这样我就不必编写 myProperty 两次?

我基本上是在寻找与 ES2015 及更高版本中的文字对象速记语法等效的 JSX。

最佳答案

没有这样的等价物。原因是 JSX 模仿 HTML 语法,并且对于 HTML,以下两者都具有含义:

// a property without value
<MyComponent myProperty />
// a property with a value
<MyComponent myProperty={myProperty} />

因此不能引入简写语法。

你可以使用纯 JS:

 React.createElement("MyComponent", { myProperty });

或者,您可以将所有属性作为 JS 对象传递:

<MyComponent {...{ myProperty }} />

我相信两者都会降低可读性。

关于reactjs - 当属性具有相同名称时,是否有 JSX 快捷方式为该属性分配值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45507152/

相关文章:

javascript - 无法将样式应用于 Reactjs 中的样式组件元素

javascript - 在 React 中运行弹出后如何激活 css 模块?

reactjs - React 类定义与导出默认值

html - &nbsp jsx 不工作

size - 在 react 引导模式上指定/设置宽度和高度

javascript - 失败的 Prop 类型 Prop 被标记为必需但其值为 `undefined`

javascript - 将 React 函数组件转换为类组件问题

android - 是否可以封装React Js webApps来构建跨平台的移动应用程序?

reactjs - 将分页与react-bootstrap表一起使用

javascript - 使用 .map 在 React 中使用 double for 循环