import '../../models/patient_model.dart'; import '../../providers/patients_provider.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; class PatientsListScreen extends StatefulWidget { @override _PatientsListScreenState createState() => _PatientsListScreenState(); } class _PatientsListScreenState extends State { var _isInit = true; var _isLoading = true; var _hasError; @override void didChangeDependencies() { final routeArgs = ModalRoute.of(context).settings.arguments as Map; PatientModel patient = routeArgs['patientSearchForm']; print(patient.TokenID+"EEEEEE"); String patientType = routeArgs['selectedType']; print(patientType); if (_isInit) { // setState(() {}); PatientsProvider patientsProv = Provider.of(context); patientsProv.getPatientList(patient, patientType).then((res) { setState(() { _isLoading = false; _hasError = res['ErrorEndUserMessage']; }); print(res); }).catchError((error) { print(error); }); } _isInit = false; super.didChangeDependencies(); } @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('PatientsListScreen'), ), body: _isLoading ? Center( child: CircularProgressIndicator(), ) : Container( child: _hasError != null ? Center( child: Text( _hasError, style: TextStyle(color: Theme.of(context).errorColor), ), ) : Text('EEEEEEEEEEEEEE'), ), ); } }