Reactjs 文本元素中的React本机调用函数
我想调用一个Reactjs 文本元素中的React本机调用函数,reactjs,firebase,react-native,google-cloud-firestore,Reactjs,Firebase,React Native,Google Cloud Firestore,我想调用一个getName函数,它接受一个game.set(Integer)并返回一个字符串。 我想在文本元素中设置的字符串。 该函数工作正常,返回前我打印了结果。 现在,在从“../SetsAPI”导入函数import{getName}之后,调用函数后得到的结果总是未定义 函数调用: import { getName } from '../SetsAPI'; ... <View style={styles.row}> <Text style={styles
getName
函数,它接受一个game.set(Integer)
并返回一个字符串。
我想在文本元素中设置的字符串。
该函数工作正常,返回前我打印了结果。
现在,在从“../SetsAPI”导入函数import{getName}之后
,调用函数后得到的结果总是未定义
函数调用:
import { getName } from '../SetsAPI';
...
<View style={styles.row}>
<Text style={styles.text}>Game: </Text>
<View style={styles.questionAmount}>
<Text>{getName(game.set)}</Text>
</View>
</View>
为什么会发生这种情况?我怎样才能预防呢?
谢谢大家! 您需要使用useState
存储该值,然后在UI中更新该值
首先在以下地点宣布该州:
{name, setName} = useState('');
这允许我们获取name
并调用setName
,并给它一个初始值'
然后在componentDidMount
或useffect
钩子中执行以下操作:
setsRef
.doc(setId)
.get()
.then((doc) => {
if (doc.exists) {
console.log("document name: " + doc.data().name)
setName(doc.data().name);
} else {
console.log("No such document!");
}
这会导致组件重新渲染自身,然后可以在渲染方法中使用name
属性
另见:
您需要使用useState
来存储该值,然后在UI中更新该值
首先在以下地点宣布该州:
{name, setName} = useState('');
这允许我们获取name
并调用setName
,并给它一个初始值'
然后在componentDidMount
或useffect
钩子中执行以下操作:
setsRef
.doc(setId)
.get()
.then((doc) => {
if (doc.exists) {
console.log("document name: " + doc.data().name)
setName(doc.data().name);
} else {
console.log("No such document!");
}
这会导致组件重新渲染自身,然后可以在渲染方法中使用name
属性
另见: