flutter_dynamic_forms icon indicating copy to clipboard operation
flutter_dynamic_forms copied to clipboard

How to add submit button and send data ?

Open dufontes opened this issue 3 years ago • 1 comments

body: Center(
        child: SingleChildScrollView(
          child: isLoading
              ? CircularProgressIndicator()
              : ParsedFormProvider(
                  create: (_) => JsonFormManager(),
                  content: json,
                  parsers: components.getDefaultParserList(),
                  child: FormRenderer<JsonFormManager>(
                    renderers: components.getReactiveRenderers(),
                    
                  ),
                ),
        ),
      ),

dufontes avatar Oct 08 '20 17:10 dufontes

Hi, for example like this:

body: Center(
  child: SingleChildScrollView(
    child: isLoading
        ? CircularProgressIndicator()
        : ParsedFormProvider(
            create: (_) => JsonFormManager(),
            content: fileContent,
            parsers: components.getDefaultParserList(),
            child: Column(
              children: [
                FormRenderer<JsonFormManager>(
                  renderers: components.getReactiveRenderers(),
                ),
                // Using Builder to obtain a BuildContext already containg JsonFormManager
                Builder(
                  builder: (context) {
                    return RaisedButton(
                      child: Text('Submit'),
                      onPressed: () {
                        var formProperties =
                            FormProvider.of<JsonFormManager>(context)
                                .getFormProperties();
                        // send data to server:
                        for (var property in formProperties) {
                          // Print to console for demonstration purposes
                          print(
                              '${property.id} ${property.property} ${property.value}');
                        }
                      },
                    );
                  },
                ),
              ],
            ),
          ),
  ),
),

I just also implemented a working example here: https://github.com/OndrejKunc/flutter_dynamic_forms/blob/master/packages/flutter_dynamic_forms_components/example/lib/simple_submit_form/simple_submit_form.dart

OndrejKunc avatar Nov 01 '20 20:11 OndrejKunc