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:
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:
-
Installera den senaste versionen av Git. Om du inte har använt Git tidigare läser du Installera Git.
-
Installera Node.js 16.13.0 eller senare. Om du inte har använt Node.js tidigare läser du Så här installerar du Node.js.
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:
-
Ö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. - 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
-
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
-
Byt namn på filen
env_template
till filen.env
. Kontrollera också att alternativet USE_LOCAL_JSON är inställt på true. -
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.
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"
}
}
}
- 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.
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.