我不确定为什么这会给我一个错误。我知道我应该做一些事情,但我不知道该告诉它什么,不要给我错误。如果我运行它,它会给我一个错误,但它实际上仍然有效,所以值会记录在控制台中。
const Tab1: React.FC = () => {
const [lockdownData, setLockdownData] = useState();
useEffect(() => {
let finalLockdownData: any;
var getLockdownData = async () => {
await firestoreDB.collection("LockdownStatus").doc("lockdownData").get().then((doc) => {
finalLockdownData = doc.data();
});
setLockdownData(finalLockdownData);
};
getLockdownData();
}, []);
console.log('Position 1')
console.log(lockdownData?.level) //ERROR: Property 'level' does not exist on type 'never[]'.ts(2339)
console.log('Position 2')
return (
只需像这样编写
const [lockdownData, setLockdownData] = useState<any[]>([])
编辑1
if (lockdownData === null) {
console.log('data is nullable');
} else {
console.log(lockdownData!.level);
}
编辑2
const [lockdownData, setLockdownData] = useState<Record<string, never>>({});
Codesandbox:https://codesandbox.io/s/dreamy-water-v0vwb?file=/src/App.tsx:108-184