我可以在没有 strictNullChecks: false 的情况下解决这个问题吗?
Can I solve this one without strictNullChecks: false?
我想知道如何在不将 strictNullchecks
设置为 false 的情况下解决这个问题。
if (someArray.find(element => element.id === x.id) {
return someArray.find(element => element.id === x.id).message
}
或
const x = someArray.find(element => element.id === x.id) ? someArray.find(element => element.id === x.id).message : "No message"
如您所知,当我将 strictNullChecks
设置为 true 时,TypeScript 会显示类似 "Object is possibly undefined" 的错误。
将strictNullChecks
设置为false是不是最好的选择?
--------新增内容--------
screen capture
if (self.cases.find(element => element.code === self.statusCode)) {
// NOTE: do not use 'case' to variable instead of the 'selectedCase'
const selectedCase = self.cases.find(element => element.code === self.statusCode)
console.log(selectedCase.message)
return (
self.statusCode + " " + selectedCase.message
)
}
Q1。当我尝试使用 'case' 作为变量时。它需要变量声明。是预声明词吗?
Q2。 console.log(selectedCase.message)
和 selectedCase.message
也会出现错误 Object is possibly undefined
。
为什么会这样..?
与其搜索数组两次,不如将结果存储在一个临时变量中,然后检查它是否已定义。
例如:
const foundElement = someArray.find(...)
if (foundElement) {
console.log(foundElement.message)
}
我想知道如何在不将 strictNullchecks
设置为 false 的情况下解决这个问题。
if (someArray.find(element => element.id === x.id) {
return someArray.find(element => element.id === x.id).message
}
或
const x = someArray.find(element => element.id === x.id) ? someArray.find(element => element.id === x.id).message : "No message"
如您所知,当我将 strictNullChecks
设置为 true 时,TypeScript 会显示类似 "Object is possibly undefined" 的错误。
将strictNullChecks
设置为false是不是最好的选择?
--------新增内容--------
screen capture
if (self.cases.find(element => element.code === self.statusCode)) {
// NOTE: do not use 'case' to variable instead of the 'selectedCase'
const selectedCase = self.cases.find(element => element.code === self.statusCode)
console.log(selectedCase.message)
return (
self.statusCode + " " + selectedCase.message
)
}
Q1。当我尝试使用 'case' 作为变量时。它需要变量声明。是预声明词吗?
Q2。 console.log(selectedCase.message)
和 selectedCase.message
也会出现错误 Object is possibly undefined
。
为什么会这样..?
与其搜索数组两次,不如将结果存储在一个临时变量中,然后检查它是否已定义。
例如:
const foundElement = someArray.find(...)
if (foundElement) {
console.log(foundElement.message)
}