Javascript for循环只返回reactJS中的初始索引
我是一个新手,所以作为我的练习,我正在创建一个动态的birtdate表单。我的第一个挑战是在选择的出生年份中列出从1900年到2017年的年份,因此我使用for循环将其缩短,而不是在标记中逐个列出年份的可怕方式。下面的代码未成功执行,它仅返回2017Javascript for循环只返回reactJS中的初始索引,javascript,reactjs,for-loop,Javascript,Reactjs,For Loop,我是一个新手,所以作为我的练习,我正在创建一个动态的birtdate表单。我的第一个挑战是在选择的出生年份中列出从1900年到2017年的年份,因此我使用for循环将其缩短,而不是在标记中逐个列出年份的可怕方式。下面的代码未成功执行,它仅返回2017 export default class Items extends Component { render() { return( <div> <form> <
export default class Items extends Component {
render() {
return(
<div>
<form>
<select name='year' className='yearSelect'>
<option value="">Year</option>
{
for(let yearCount = 2017; yearCount >= 1900; yearCount--)
return <option value={yearCount}>{yearCount}</option>
}
</select>
</form>
</div>
);
}
}
在控制台中,它抛出了一个错误,显示:
由于作用域的原因,花括号困扰着我,因此我不得不删除for循环的花括号,并缩进其中的行。如下更新代码
export default class Items extends Component {
render() {
let options = [];
for(let yearCount = 2017; yearCount >= 1900; yearCount--)
options.push((<option value={yearCount} key={yearCount}>{yearCount}</option>));
return(
<div>
<form>
<select name='year' className='yearSelect'>
<option value="">Year</option>
{ options }
</select>
</form>
</div>
);
}
}
for循环无法返回内容。在渲染之前,您需要运行该代码,将其放入一个变量中,然后在该括号区域调用该变量,看起来类似于将其与@a.Lau组合,谢谢提示。我不知道谢谢你,巴德:只有一个问题。。。标签中的关键属性是什么?它是做什么的?当使用循环渲染元素时。您必须分配键属性,并且它应该是唯一的。基于此键,react将在此处操作元素。在使用循环操作DOM元素时,是否始终需要该属性?是的,必须在循环中添加键属性。