настройка имени пользователя по номеру телефона flutter

# #flutter #firebase-authentication

Вопрос:

Я пытаюсь установить имя пользователя по номеру телефона, однако получаю ошибку «null». Из диалогового окна оповещения в классе Register, где пользователь вводит номер телефона, в методе OnChanged я вызываю модель RegisterViewModel, чтобы установить значение в качестве имени пользователя.

 showAlertDialog(BuildContext context) async {
RegisterViewModel viewModel;
  return showDialog(
      context: context,
      builder: (context) {
        return AlertDialog(
          title: Text(Languages.of(context).mustPhone),
          content: TextField(
            controller: _textFieldController,
            textInputAction: TextInputAction.go,
            keyboardType: TextInputType.numberWithOptions(),
            decoration: InputDecoration(hintText: Languages.of(context).phoneNum),
              onChanged: (String value) {
                setState(() {
                  viewModel.setName(value);
                });}),
          actions: <Widget>[
            new TextButton(
              child: new Text(Languages.of(context).register),
              onPressed: () {
        Navigator.of(context).push(MaterialPageRoute(
        builder: (context) => OTPScreen(_textFieldController.text)));
        }
        )
          ],
        );
      }
      );
}
 

в классе RegisterViewModel метод является:

 setName(val) {
username = val;
notifyListeners();
}
 

как это сделать правильно? заранее спасибо!