Причина, по которой вы не можете получить доступ к своим учетным данным после перехода от ListTasksScreen
, заключается в том, что ваши учетные данные являются опорой в компоненте ListTasksScreen
.
Возможно, вы хотите, чтобы что-то еще сохраняло пользовательские учетные данные вваше приложение, и пусть react-navigation
просто обрабатывает навигацию.
Простой способ начать - это использовать AsyncStorage
:
import { AsyncStorage } from 'react-native';
// ...
class LogInScreen extends React.Component {
handleLogIn = () {
this.logIn(token => {
AsyncStorage.setItem('MyToken', token);
});
}
}
Затем на другом экране вы можете получить свой токен:
getData = () => {
AsyncStorage.getItem('MyToken').then(token => {
const headers = { Authentication: `Bearer ${token}` };
fetch('my-backend.com/api/data', { method: 'GET', headers }).then(
// ...
)
});
}
Это безопасный способ хранения конфиденциальной информации подробнее здесь .
Однако вы также можете использовать эту реагировать-нативную цепочку для ключей для хранения в ваших учетных данных пользователя.