'Future <dynamic>' не является подтипом типа 'String' - PullRequest
0 голосов
/ 28 апреля 2020

Я новичок во флаттере. Я пытаюсь узнать SharedPreferences, и у меня есть это исключение. Как я могу решить это?

класс _MyAppState расширяет состояние {

 Future<SharedPreferences> prefs = SharedPreferences.getInstance(); 
      @override
      Widget build(BuildContext context) {
        return Scaffold(
            body: Column(
              children: <Widget>[
                RaisedButton(
                  onPressed: () {addStringToSF();},
                ),
                Text(getStringValuesSF()),
              ],
            ),


        );
      }

      addStringToSF() async {
        SharedPreferences prefs = await SharedPreferences.getInstance();
        prefs.setString('stringValue', "abc");
      }

     getStringValuesSF() async {
        SharedPreferences prefs = await SharedPreferences.getInstance();
        String stringValue = prefs.getString('stringValue');
        return stringValue;
      }
    }

1 Ответ

1 голос
/ 28 апреля 2020

по умолчанию asyn c функция, возвращающая динамику c мы должны выполнить приведение типа

Future<String> getStringValuesSF() async {
        SharedPreferences prefs = await SharedPreferences.getInstance();
        String stringValue = prefs.getString('stringValue');
        return stringValue;
      }
...