Form

Requires:
@ray-js/ray≥0.5.10

Description

Form container for collecting and submitting input values from its child controls.

Props

PropertyTypeRequiredDefaultDescription
No-Triggered on submit, carrying the form data
No-Triggered when the form is reset

Examples

Basic usage

import React, { useState } from 'react';
import { Button, Input, Switch, View, Form, Text } from '@ray-js/ray';

export default function () {
  const [resultData, setResultData] = useState({});

  return (
    <View style={{ padding: '20px' }}>
      <Form
        onSubmit={(e) => {
          console.log('Submit form:', e.detail.value);
          setResultData(e.detail.value);
        }}
        onReset={() => {
          console.log('Reset form');
          setResultData({});
        }}
      >
        <View style={{ marginBottom: '16px' }}>
          <Text>Switch:</Text>
          <Switch name="switch" />
        </View>
        <View style={{ marginBottom: '16px' }}>
          <Text>Input:</Text>
          <Input name="input" placeholder="Please enter" />
        </View>
        <Button formType="submit" type="primary">
          Submit
        </Button>
        <Button formType="reset" style={{ marginTop: '10px' }}>
          Reset
        </Button>
      </Form>
    </View>
  );
}