title: Flutter : Future builder not updating form values
body: <p>Using Future builder, able to populate earlier saved values of form fields at the time of page loading.
  But when snapshot is null, it has to display empty form</p>
  <p>This below code is working fine when form has some initials values</p>
  <pre><code>     Widget build(BuildContext context) {
          return SafeArea(
            child: Scaffold(
              body: Container(
                height: MediaQuery.of(context).size.height,      
                child:FutureBuilder(
                  future: _getPersonalInfoFormInitialValue(),
                 builder: (context, snapshot) =&gt; snapshot.hasData ? buildFormBuilder(context, snapshot.data) : Center(child: Text('Loading .....')),
                ),
              ),
            ),
          );
  
    }
  </code></pre>
  <p>This code is working fine when snapshot.data is null, its displaying empty form as expected</p>
  <pre><code>FutureBuilder(
              future: _getPersonalInfoFormInitialValue(),
             builder: (context, snapshot) =&gt; buildFormBuilder(context, snapshot.data) ,
            ),
  </code></pre>
  <p>So I have combined both to get the form working for all cases as,</p>
  <pre><code>Widget build(BuildContext context) {
      return SafeArea(
        child: Scaffold(
          body: Container(
            height: MediaQuery.of(context).size.height,      
            child:FutureBuilder(
              future: _getPersonalInfoFormInitialValue(),
             builder: (context, snapshot) =&gt; snapshot.hasData ? buildFormBuilder(context, snapshot.data) : buildFormBuilder(context, null) ,
            ),
          ),
        ),
      );
    }
  </code></pre>
  <p>buildFormBuilder method :</p>
  <pre><code>FormBuilder buildFormBuilder(BuildContext context, data) {
          return FormBuilder(
            key: _personalDetailFormKey,
            initialValue: data ?? {},
            autovalidate: true,
            child: Stack(
              children: &lt;Widget&gt;[
                   .........
                            _submitButton(() {
                              _submitPersonalDetailInfoForm();
                            }, 'Submit'), 
              ],
            ),
          );
    }
  </code></pre>
  <p>_getPersonalInfoFormInitialValue</p>
  <pre><code>_getPersonalInfoFormInitialValue() async {
      return _personalInfo!=null ? _personalInfo.toPersonalInfoMap() : null;
    }
  </code></pre>
  <p>So now, in both the cases, its displaying only empty fields of the form. eventhough snapshot.data has the values but its not populating into form fields.
  I have tried with Future.delayed(const Duration(seconds: 10), () {}); still facing issue.</p>
  <p>Something is getting wrong somewhere, not able to identify, any help appreciated !! Thanks</p>