我是React Native的初学者。在我的项目中,我需要先设置数据然后再渲染并返回数据。
可以帮我吗?谢谢。
async function ReadData() {
var RNFS = require('react-native-fs');
try {
if (await RNFS.exists(RNFS.DocumentDirectoryPath + '/logindata.json')) {
var path = RNFS.DocumentDirectoryPath + '/logindata.json';
var Status = await RNFS.readFile(path, 'utf8')
var login = JSON.parse(Status)
if (login.is_login == true) {
return true
} else {
return false
}
} else {
return false
}
} catch{
return false
}
}
const App = () => {
useEffect( () => {
var Login=ReadData()
SetDirection();
SplashScreen.hide();
console.log(Login)
}, []);
答案 0 :(得分:2)
这不是它与React一起工作的方式。 React将立即呈现您的UI并在加载或更新数据时自动更新。
但是,当数据加载完成时,您可以隐藏启动屏幕。 App可以将回调传递给ReadData,当数据准备就绪时,ReadData会调用此回调,然后App可以隐藏启动屏幕。
应用
useEffect( () => {
const Login=ReadData(onDataReady)
...
onDataReady = () => {
SplashScreen.hide();
....
}