反应.js动态抓取对象,导致未定义
react.js dynamically grabbing object resulting in undefined
我正在学习反应.js。我有一个对象文字,我正在尝试根据从选择输入中选择的内容动态选择对象中的对象。然而,我变得不确定。我已经尝试了点和括号符号。我成功地抓取了所选选项的值并将其存储在变量中。有什么想法吗?
这是我的对象:
var horoList = {
aries: {
title: "JerkFace",
},
cancer: {
title: "Cancerous",
},
gemini : {
title: "GoofBall"
}
} ;
以下是我在渲染方法中的一些 JSX:
<select name="pick-sign" onChange={this.handleChange}>
<option></option>
<option value="aries" >Aries</option>
<option value="cancer" >Cancer</option>
<option value="gemini" >Gemini</option>
<option value="taurus" >Taurus</option>
</select>
这是我的句柄更改方法:
handleChange: function(e) {
var selectedHoro = e.target.value;
console.log(selectedHoro); //outputs: aries
console.log(horoList); //outputs: Object {aries: Object, cancer: Object, gemini: Object}
console.log(horoList.aries); //ouputs: Object {title: "JerkFace"}
console.log(horoList['selectedHoro']); //outputs: undefined
// this.setState({
// horos: horoList.selectedHoro
// });
},
如果更改此行:
console.log(horoList['selectedHoro']); //outputs: undefined
自:
console.log(horoList[selectedHoro]);
您应该获得预期的输出。当您使用 horoList['selectedHoro']
时,将使用文本字符串值 selectedHoro
,因此它将horoList.selectedHoro
。当您使用 horoList[selectedHoro]
时,selectedHoro
是一个变量,它的值用于确定要解析的属性名称,以便解析为 horoList.aeries
(当selectedHoro
=== aeries
时)。
相关文章:
- 从模块函数返回未定义的对象
- 未捕获的类型错误: 无法读取未定义的 - 对象的属性
- 未定义 RequireJS 对象
- 未检索到输入字段的值:未定义的对象
- 未定义Javascript对象Class错误
- 如何在不获得引用错误的情况下将不存在的JavaScript对象与未定义的对象进行比较
- Javascript - 在未定义的对象上调用 new
- 如何删除未定义的对象错误并根据位置重定向用户
- 无论如何,在Visual Studio智能感知中定义一个未定义的对象
- 余烬数据断言失败:无法对未定义的对象使用“查询”调用 get
- 角度控制器/工厂返回未定义的对象
- 无法读取未定义的对象
- 对于循环添加被读取为未定义的对象
- javascript:未定义获取对象
- 汇总.js:外部依赖项中未定义的对象
- 即使未调用 JQuery 未定义的对象属性仍会导致错误
- getJSON JavaScript 函数返回未定义的对象
- 帆查询不断呈现未定义的对象
- 未定义的对象值和NaN
- 未定义Javascript对象