Как мне сохранить переменную во флаттере и сделать ее доступной для всех моих файлов? - PullRequest
0 голосов
/ 27 мая 2020

Я в основном получаю от пользователя пароль и код 6 di git и хочу сохранить его в переменной. Я знаю, что он уже сохранен как «controller.text» и «code», но как только я go перейду на следующий экран, я не смогу получить к ним доступ. Я попытался использовать класс и передать туда эти два параметра, но это означает, что мне нужно создавать его экземпляр каждый раз, когда я хочу получить пароль / код, и я не смогу это сделать, поскольку мне нечего будет передавать. Может ли кто-нибудь помочь или предложить другой способ сделать это? Извините, если это глупый вопрос. Честно говоря, ответ может быть простым.

Container(
            child: RaisedButton(
              child: Text("Submit"),
              onPressed: () async {
                 currentCollection.createCollection(controller.text, code);
                },
            ),
          ),
class Collection{

  static  String password;
  static  int code;
  Collection(password,code);
  static final  String collectionName = password;
  static final int passcode = code;

  getPassword()
  {
  return password;
  }
  getCode()
  {
  return code;
  }



}

1 Ответ

1 голос
/ 27 мая 2020

Это очень просто, вне всех ваших классов / виджетов / функций. Вы создаете переменную типа

var sharedPass;

и меняете ее значение, когда вам нужно, например,

Container(
            child: RaisedButton(
              child: Text("Submit"),
              onPressed: () async {
                 sharedPass = controller.text;
                 currentCollection.createCollection(controller.text, code);
                },
            ),
          ),

теперь вы можно использовать его значение где угодно, например

Text(sharedPass)
...