# #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();
}
как это сделать правильно? заранее спасибо!