init property

  1. @override
dynamic Function() get init
override

Initialize your widget in init.

  • init is called in the initState method. You can use this method to perform any operations before the widget is rendered.

E.g.

get init => () async {
  await api<ApiService>((request) => request.fetchData());
  setState(() {});
};

Implementation

@override
get init => () async {
      if (stateData != null && stateData is bool) {
        _alertEnabled = stateData!;
      }

      if (stateName != null && widget.rememberAlert == true) {
        dynamic alertData = await NyStorage.read(stateName!);
        if (alertData.runtimeType.toString() != 'bool') {
          alertData = null;
        }

        if (alertData == null) {
          if (widget.alertEnabled != null) {
            _alertEnabled = widget.alertEnabled!;
            await NyStorage.save(stateName!, _alertEnabled);
          }
          return;
        }

        if (alertData! is String && alertData.tryParseBool() == null) {
          alertData = false;
        }

        _alertEnabled = alertData;
        await NyStorage.save(stateName!, _alertEnabled);
        return;
      } else {
        _alertEnabled = widget.alertEnabled;
      }

      _alertEnabled ??= false;
    };