Skapa och förhandsgranska ett Headless-formulär med en React-app introduction

Startsatsen hjälper dig att komma igång snabbt med en React-app. Du kan utveckla och använda Headless-anpassade formulär i en Angular, Vanilla JS och andra utvecklingsmiljöer som du själv väljer.

Att börja med Headless adaptive forms är enkelt och snabbt. Klona det färdiga React-projektet, installera beroendena och kör projektet. Du har ett Headless-anpassat formulär som är integrerat i en React-app. Du kan använda exempelprojektet för att skapa och testa Headless-adaptiva formulär innan du distribuerar dem i en produktionsmiljö.

Låt oss börja:

NOTE
Den här guiden för att komma igång använder en React-app. Du kan använda valfritt teknik- eller programmeringsspråk för att använda Headless adaptive-formulär.

Innan du börjar pre-requisites

Om du vill skapa och köra en React-app bör du ha följande installerat på datorn:

Kom igång

Så här kommer du igång:

1. Konfigurera startpaket för Headless adaptive forms install

Startsatsen är en React-app med ett exempel på Headless-anpassningsbart formulär och motsvarande bibliotek. Använd paketet för att utveckla och testa formulär för Headless-anpassning och motsvarande React-komponenter. Kör följande kommandon för att konfigurera startkit för Headless-anpassade formulär:

  1. Öppna kommandotolken och kör följande kommando:

    code language-shell
    git clone https://github.com/adobe/react-starter-kit-aem-headless-forms
    

    Kommandot skapar en katalog med namnet response-starter-kit-aem-headless-forms på din nuvarande plats och klonar startappen för Headless adaptive forms React i den. Tillsammans med de konfigurationer och listor över beroenden som krävs för att återge formuläret innehåller katalogen följande viktiga innehåll:

    • Exempelformulär: Startsatsen innehåller ett exempelformulär för låneansökningar. Om du vill visa formuläret (formulärdefinitionen) som ingår i appen öppnar du filen /react-starter-kit-aem-headless-forms/form-definations/form-model.json.
    • Exempelreaktionskomponenter: Startsatsen innehåller samplingsreaktionskomponenter för RTF och Slider. Den här guiden hjälper dig att skapa egna anpassade komponenter med hjälp av dessa Rich Text- och Slider-komponenter.
    • Mappings.ts: Filen mappings.ts hjälper dig att mappa anpassade komponenter med formulärfält. Du kan till exempel mappa ett numeriskt nummerfält med en klassificeringskomponent.
    • Miljökonfigurationer: Med miljökonfigurationer kan du välja att återge ett formulär som ingår i startpaketet eller hämta ett formulär från en AEM Forms-server.

    note note
    NOTE
    Exemplen i dokument är baserade på VSCode. Du kan använda vilken kodredigerare som helst för oformaterad text.
  2. Navigera till katalogen responsstarter-kit-aem-headless-forms och kör följande kommando för att installera beroendena:

    code language-shell
    npm install
    

    Kommandot hämtar alla nödvändiga paket och bibliotek som behövs för att köra och skapa programmet, till exempel Headless-formulär
    Bibliotek (@aemforms/af-response-renderer, @aemforms/af-response-components, @adobe/replication-trum), kör valideringar och bevarar data för förekomster av formuläret.

2. Förhandsgranska den Headless-anpassade formen preview

När du har konfigurerat startpaketet kan du förhandsgranska det Headless-anpassade formuläret och ersätta det med din egen anpassade form. Du kan också konfigurera startsatsen för att hämta ett formulär från en AEM Forms-server. Förhandsgranska formuläret

  1. Byt namn på filen env_template till filen .env. Kontrollera också att alternativet USE_LOCAL_JSON är inställt på true.

  2. Använd följande kommando för att köra programmet:

    code language-shell
      npm start
    

    Det här kommandot startar en lokal utvecklingsserver och öppnar exempelformuläret Headless adaptive form, som ingår i startappen, i din standardwebbläsare.

    Exempelformulär utan rubrik

    Voila! Du är redo att börja utveckla ett anpassat Headless-formulär.

3. Skapa och återge en egen Headless-blankett custom

Ett anpassat formulär utan rubrik representerar formuläret och dess komponenter, till exempel fält och knappar, i JSON-format (JavaScript Object Notation). Fördelen med JSON-formatet är att det enkelt kan tolkas och användas av olika programmeringsspråk, vilket gör det enkelt att utbyta formulärdata mellan system. Om du vill visa exempelformuläret Headless adaptive som ingår i appen öppnar du filen /react-starter-kit-aem-headless-forms/form-definations/form-model.json.

Låt oss skapa ett kontaktformulär med fyra fält: Namn, E-post, Kontaktnummer och Meddelande. Fälten definieras som objekt (objekt) i JSON, där varje objekt (objekt) har egenskaper som typ, etikett, namn och obligatoriskt. Formuläret har också en knapp av typen "skicka". Här är JSON för formuläret.

{
  "afModelDefinition": {
    "adaptiveform": "0.10.0",
    "items": [
      {
        "fieldType": "text-input",
        "label": {
          "value": "Name"
        },
        "name": "name"
      },
      {
        "fieldType": "text-input",
        "format": "email",
        "label": {
          "value": "Email"
        },
        "name": "email"
      },
      {
        "fieldType": "text-input",
        "format": "phone",
        "pattern": "[0-9]{10}",
        "label": {
          "value": "Contact Number"
        },
        "name": "Phone"
      },
      {
        "fieldType": "multiline-input",
        "label": {
          "value":"Message"
        },
        "name": "message"
      },
      {
        "fieldType": "button",
        "label":{
          "value": "Submit"
        },
        "name":"submit",
        "events":{
          "click": "submitForm()"
        }
      }
    ],
    "action": "https://eozrmb1rwsmofct.m.pipedream.net",
    "description": "Contact Us",
    "title": "Contact Us",
    "metadata": {
      "grammar": "json-formula-1.0.0",
      "version": "1.0.0"
    }
  }
}
NOTE
  • Attributet afModelDefinition behövs bara för React-program och är inte en del av formulärdefinitionen.
  • Du kan skapa JSON-formulär för hand eller använda AEM adaptive forms editor (adaptive forms WYSIWYG editor) för att skapa och leverera formulär-JSON. I en produktionsmiljö använder du AEM Forms för att leverera formuläret JSON, mer om det senare.
  • I självstudien används https://pipedream.com/ för att testa inskickade formulär. Du använder egna slutpunkter eller slutpunkter från tredje part som godkänts av din organisation för att ta emot data från ett Headless Adaptive-formulär.

Om du vill återge formuläret ersätter du det Headless-anpassade formuläret JSON /react-starter-kit-aem-headless-forms/form-definations/form-model.json med ovanstående JSON, sparar filen, väntar på att starter-kit ska kompilera och uppdatera formuläret.

Ersätt exempelformuläret Headless adaptive form JSON med den anpassade Headless-adaptiva formen JSON

Du har renderat den Headless Adaptive-formen.

Bonus

Vi ställer in titeln på webbsidan som är värd för formuläret till Contact Us | WKND Adventures and Travel. Om du vill ändra titeln öppnar du filen react-starter-kit-aem-headless-forms/public/index.html för redigering och anger titeln.

Nästa steg

Som standard använder startsatsen Adobe Spectrum -komponenter för att återge formuläret. Du kan använda för att skapa och använda egna komponenter eller tredjepartskomponenter. Du kan till exempel använda användargränssnittet för Google-material eller Chakra-gränssnittet.

Låt oss använda användargränssnittet för Google-material för att återge formuläret Kontakta oss.

recommendation-more-help
ce8b2828-9203-402e-a565-7b758c99b2ba