Доступ к другому методу класса в Flutter / dart - PullRequest
0 голосов
/ 01 февраля 2019

Я работал над логином с предпочтениямиВсе работает нормально, когда я написал весь код в main.dart.

Проблема:

Когда я создаю отдельный класс на MySharePref, я получаю некоторую ошибку.

MySharePref.dart

import 'package:first_app/UserModel.dart';
import 'package:shared_preferences/shared_preferences.dart';

class SharePrefClass {


  void _saveData(UserModel model) async{

    SharedPreferences prefs = await SharedPreferences.getInstance();
    await prefs.setString("Username",model.userName);
    await prefs.setString("Password", model.password);
  }
  Future<UserModel> _getData() async{
    SharedPreferences preferences = await SharedPreferences.getInstance();
    String username =  preferences.getString("Username");
    String password = preferences.getString("Password");
    UserModel model = UserModel(username,password);
    return model;
  }

}

Я хочу получить доступ к этим обеим функциям в main.dart:

_checkLogin() async {
     UserModel userModel = new UserModel(
      userNameEditText.text , passwordEditText.text); 

   SharePrefClass mySharedPref = new SharePrefClass();
   final UserModel returnModel = mySharedPref._getData() ;

    if(returnModel.userName == ""){
      print("No data");
    }else{
      print("else executed");
    }
  }

Я получаю ошибку:

enter image description here

1 Ответ

0 голосов
/ 01 февраля 2019

Префикс "_" означает личное поле в дротике.

Изменение имени метода _getData() на getData() позволит вам получить доступ к этому методу в main.dart

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...