【发布时间】:2016-08-10 03:15:02
【问题描述】:
我想知道如何在 JSX 中做到这一点。如果您查看下面的代码,则有重复的部分,其中设置了 <div className={`${cssComponentName}-container`}> 用于包装 JSX。如何在 if/else 循环和单个 return 语句之外执行此操作而不会遇到 JSX 的“单根”问题。
buildComponent() {
const { element: {title, type, items }, name } = this.props;
const cssComponentName = name.toLowerCase();
if (type === 'string' || type === 'number') {
return (
<div className={`${cssComponentName}-container`}>
<label htmlFor={name}>{title}</label>
<input type="text" name={name} />
</div>
);
}
if (type === 'array') {
return (
<div className={`${cssComponentName}-container`}>
<label htmlFor={name}>{title}</label>
<select name={name}>
{ this.buildDropdown(items.enum, items.enumNames) }
</select>
</div>
);
}
}
【问题讨论】:
标签: javascript reactjs react-jsx jsx