当我在 Javascript 中返回对象时未定义
Undefined when i am returning an Object in Javascript
我在 VueX 中做一个 getter,当我为另一个函数返回一个对象时,我有“未定义”。
getId: (state) => (LotofID, id) => {
LotofID.points.map(obj => {
if (obj.id === id)
return (obj);
})
基本上我有这样的功能。当我用 console.log(obj) 显示 obj
时,我在此处有一个包含元素的对象。基本上它在工作。但是当我在做 return
并且我试图在另一个函数中获取 obj 时
var test = []
selectedRowKeys.map(obj => {
test.push(this.$store.getters.getId(LotofID, obj))
})
console.log(test)
我的变量中有一个“未定义”。
任何人都知道问题出在哪里
您应该使用 find
方法而不是 map
和 return 在您的 getter:
中找到的项目
getId: (state) => (LotofID, id) => {
return LotofID.points.find(obj => obj.id === id)
}
我在 VueX 中做一个 getter,当我为另一个函数返回一个对象时,我有“未定义”。
getId: (state) => (LotofID, id) => {
LotofID.points.map(obj => {
if (obj.id === id)
return (obj);
})
基本上我有这样的功能。当我用 console.log(obj) 显示 obj
时,我在此处有一个包含元素的对象。基本上它在工作。但是当我在做 return
并且我试图在另一个函数中获取 obj 时
var test = []
selectedRowKeys.map(obj => {
test.push(this.$store.getters.getId(LotofID, obj))
})
console.log(test)
我的变量中有一个“未定义”。 任何人都知道问题出在哪里
您应该使用 find
方法而不是 map
和 return 在您的 getter:
getId: (state) => (LotofID, id) => {
return LotofID.points.find(obj => obj.id === id)
}