Reactjs 无法从常量上的数组映射进行渲染
我需要创建一个const组件来呈现带有选项的select,但是我无法呈现选项字段,因为代码返回的select没有任何选项。问题出在哪里 谢谢你的建议 从React导入React; 常量过滤器选择=道具=>{ const{title,name,selectedValue,optionsValue,onChange}={…props}; 常量渲染=选项值=>{ optionsValue.mapoptionValue,i=> {optionValue.name} ; }; 回来 {title} {渲染} ; }; 导出默认过滤器选择; 您将renderopions定义为一个方法,但忘记向其发送optionsValue 您将renderopions定义为一个方法,但忘记向其发送optionsValueReactjs 无法从常量上的数组映射进行渲染,reactjs,ecmascript-6,Reactjs,Ecmascript 6,我需要创建一个const组件来呈现带有选项的select,但是我无法呈现选项字段,因为代码返回的select没有任何选项。问题出在哪里 谢谢你的建议 从React导入React; 常量过滤器选择=道具=>{ const{title,name,selectedValue,optionsValue,onChange}={…props}; 常量渲染=选项值=>{ optionsValue.mapoptionValue,i=> {optionValue.name} ; }; 回来 {title} {渲染
渲染是一个函数。所以你必须这样称呼它:
<select className="sl sl-fullwidth" onChange={onChange} required>
{renderOptions()}
</select>
您可以去掉optionsValue参数,因为它来自于道具。您必须从函数返回。试着考虑一下:
const renderOptions = () => {
return optionsValue.map((optionValue, i) =>
<option value={optionValue.value} key={i}>{optionValue.name}</option>
);
};
渲染是一个函数。所以你必须这样称呼它:
<select className="sl sl-fullwidth" onChange={onChange} required>
{renderOptions()}
</select>
您可以去掉optionsValue参数,因为它来自于道具。您必须从函数返回。试着考虑一下:
const renderOptions = () => {
return optionsValue.map((optionValue, i) =>
<option value={optionValue.value} key={i}>{optionValue.name}</option>
);
};
渲染是一个函数。您可以将其称为passingoptionsvalue作为参数;或者更改代码,使渲染不再是一个函数,而是一个数组,如下所示:
const renderOptions = optionsValue.map((optionValue, i) =>
<option value={optionValue.value} key={i}>{optionValue.name}</option>
);
渲染是一个函数。您可以将其称为passingoptionsvalue作为参数;或者更改代码,使渲染不再是一个函数,而是一个数组,如下所示:
const renderOptions = optionsValue.map((optionValue, i) =>
<option value={optionValue.value} key={i}>{optionValue.name}</option>
);
在我看来,这是最好的解决方案,所以我用它来更改代码。非常感谢。在我看来,这是最好的解决方案,所以我用它来更改代码。非常感谢。