Bygg engagerande Forms med baskomponenter och Headless Adaptive Forms i AEM Forms as a Cloud Service build-engaging-forms-using-core-components-and-headless
Lab-översikt lab-overview
I detta praktiska labb lär du dig följande:
Hur man använder AEM Forms för att enkelt skapa anpassningsbara blanketter med hjälp av de senaste kärnkomponenterna. Dessa komponenter är förenliga med AEM Sites och möjliggör datainhämtning över flera kanaler genom att leverera de adaptiva formulären som headless-formulär till webben, mobiler och chatt. Du får också lära dig de effektivaste strategierna när det gäller format, anpassningar och gränssnittsutveckling.
Viktiga uppgifter key-takeaways
-
Affärsflexibilitet: Som affärsanvändare kan jag enkelt skapa formulärupplevelser för flera kanaler.
-
Framåtutvecklare: Som klientutvecklare kan jag styra slutanvändarens upplevelse med headless-formulär.
-
Utvecklarhastighet: Som utvecklare kan jag enkelt och konsekvent anpassa webbplatser och Forms-komponenter.
Förutsättningar prerequisites
Så här använder du det här praktiska labbet:
-
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.
-
Aktivera adaptiva Forms Core-komponenter för din AEM Forms as a Cloud Service-miljö.
-
Installera Microsoft Visual Studio Code eller en vanlig textredigerare. Exemplen i det här dokumentet använder Microsoft Visual Studio Code.
Lektion 1 lesson-1
Syfte lesson-1-objectives
Bekanta dig med AEM Forms as a Cloud Service-miljö.
Lektionssammanhang lesson-1-context
I den här lektionen lär du dig AEM Forms as a Cloud Service-miljö genom att navigera i användargränssnittet.
Utövning lesson-1-excercise
-
Öppna webbläsaren och ange webbadressen till Cloud Service-redigeringsmiljö.
-
Logga in i Cloud Service redigeringsmiljö.
-
Om du vill navigera till användargränssnittet i AEM Forms klickar du på Forms > Forms & Documents.
Stäng alla popup-fönster som rör inställningar eller information. Alla tillgängliga formulär visas.
Lektion 2
Syfte
Skapa ett adaptivt formulär med hjälp av de senaste centrala komponenterna, konfigurera och skicka in formuläret.
Lektionssammanhang
I den här lektionen kommer du som företagsanvändare att skapa ett anpassningsbart formulär för flera kanaler, som webben, mobiler och chatt, med hjälp av anpassningsbar formulärredigering och standardiserade OOTB-kärnkomponenter för datainhämtning.
Utövning
-
Skapa en slutpunkt för överföring av formuläret:
-
Öppna https://pipedream.com/requestbin på en ny webbläsarflik.
-
Klicka på Skapa en offentlig bin och kopiera URL:en för slutpunkten.
-
-
Skapa ett anpassat formulär med hjälp av guidegränssnittet:
-
Navigera till AEM Forms som Cloud Service webbgränssnitt och navigera till Forms och Dokument på fliken Webbläsare som används i lektion 1.
-
Klicka på Skapa > Adaptivt formulär.
-
Välj mallen Tom med kärnkomponenter på mallvalsskärmen enligt nedan:
-
Klicka på fliken Format och välj temat wk-theme så som visas nedan:
-
Klicka på fliken Överföring och välj kortet Skicka till REST-slutpunkt och ange det offentliga facket i fältet URL för POST-begäran enligt nedan:
-
Klicka på Skapa. Ange ett namn och en titel i formuläret. Exempel: registrering. Klicka på Skapa.
-
Den adaptiva formulärredigeraren öppnas. Stäng alla popup-fönster eller dialogrutor för inställningar eller information. Klicka på komponentwebbläsaren till vänster och lägg till komponenterna Header och Footer i det tomma formulärets övre och nedre del.
-
Dra och släpp komponenter från komponentwebbläsaren för att skapa ett formulär som liknar följande:
-
-
Lägg till valideringar i formuläret:
-
Klicka på komponenten Telefonnummer så att snabbmenyn visas. Klicka på ikonen Förnya på menyn för att konfigurera fältet.
-
Öppna fliken valideringar, markera fältet Obligatoriskt och klicka på Klar. Meddelandet om att åtgärden lyckades visas.
-
-
Förhandsgranska och skicka formuläret.
-
Klicka på Förhandsgranska om du vill förhandsgranska formuläret från ett slutanvändarperspektiv.
-
Fyll i formuläret med provdata.
-
Skicka formuläret.
-
Kontrollera skickade data på fliken Begäranbehållare.
-
-
Lägg till interaktivitet i formuläret med regler:
-
Klicka på rutan Markera om du vill få 5 % rabatt. Klicka på ikonen Regler i alternativverktygsfältet. Alternativet Regelredigerare öppnas.
-
Skapa en regel när alternativet Markera kryssrutan för att få 5 % rabatt är markerat inaktiveras alternativen för att använda kreditkort.
-
-
Publicera formuläret.
-
Öppna AEM Forms hanteringsgränssnitt, till exempel
https://author-p105303-e986623.adobeaemcloud.com/ui%23/aem/aem/forms.html/content/dam/formsanddocuments
, och välj formuläret. -
Klicka på Publicera.
Meddelandet om att åtgärden lyckades visas.
Den publicerade URL:en för formuläret liknar
https://publish-p105303-e986623.adobeaemcloud.com/content/forms/af/registration.html
. -
Om du vill visa det publicerade formuläret ersätter du program-ID:t (pXXXXXX) och miljö-ID:t (eXXXXXX) i ovanstående URL med ID:n för
miljö.
-
Lektion 3
Syfte
Uppdatera format med hjälp av vedertagna metoder för utveckling av klientprogram.
Lektionssammanhang
I den här lektionen lär du dig hur du enkelt kan uppdatera formateringen för det tidigare skapade adaptiva formuläret.
Utövning
Konfigurera en lokal databas med temat:
-
Öppna kommandotolken eller kommandotolken med administratörsbehörighet:
-
Använd följande kommando på kommandotolken för att navigera till mappen c:\git
code language-shell cd c:\git
-
Använd följande kommando för att klona koden för temat Framtend:
code language-shell git clone -b WKND https://github.com/adobe/aem-forms-theme-canvas
-
Använd följande kommando i den angivna ordningen för att navigera till katalogen aem-forms-theme-canvas och öppna Visual Studio-kod.
code language-shell cd aem-forms-theme-canvas code .
-
Välj Lita på författarna till alla filer i den överordnade mappen och klicka på Ja, jag litar på författarna.
-
Om du vill återge formuläret som finns i molntjänstens publiceringsmiljö byter du namn på filen
env_template
. Om du vill byta namn på filen högerklickar du på filen env_template och väljer alternativet Byt namn . -
Ange följande värden för variablerna i .env-filen och spara filen:
-
AEM_URL: Ange din molntjänstpubliceringsmiljö. Exempel:
https://publish-p105303-e986623.adobeaemcloud.com/
-
AEM_ADAPTIVE_FORM: Ange sökvägen för formuläret. Om formulärsökvägen till exempel är
/content/forms/af/registration
blir värdet för den här variabelnregistration
.
-
-
Skapa en lokal användare i AEM-miljön.
note note NOTE Om du vill skapa en lokal användare går du till AEM Home
>Tools
>Security
>Users
.
Kontrollera att användaren är medlem i gruppen för användare av formulär. -
Kör följande kommando i kommandotolken:
code language-shell npm install
note note NOTE - Om du får ett meddelande som ber om att uppdatera
npm
via kommandotnpm notice Run npm nstall -g npm@9.6.0
, ska du ignorera meddelandet. - Kör inte andra
npm
-kommandon, såvida du inte har instruerats i arbetsboken.
- Om du får ett meddelande som ber om att uppdatera
-
Kör nu följande kommando för att förhandsgranska formuläret.
code language-shell npm run live
När ovanstående kommando har körts väntar du på meddelandet
webpack compiled
och du omdirigeras till en inloggningssida för AEM. -
Klicka på Logga in lokalt (endast administrationsuppgifter) på inloggningssidan för AEM.
-
Ange inloggningsuppgifterna för den skapade lokala användaren och formuläret visas på en webbläsarflik.
note note NOTE Om du får en tom skärm i webbläsaren efter att ha kört kommandot npm run live
i mer än 3-4 minuter ändrar dulocalhost
i webbläsarens URL till 127.0.0.1 och trycker på Enter. -
Öppna filen
PROJECT\src\site\_variables.scss
i Visual Studio Code. Observera att färgen$error
är en skugga av RED. -
Skicka formuläret i webbläsaren för att se den röda färgen i fältet Förnamn.
-
Ställ in färgen $error på #5736eb och spara filen.
-
Uppdatera webbläsaren och skicka formuläret. Observera att felfärgen i förnamnsfältet har ändrats därefter.
-
I kommandotolken trycker du på CTRL+C, anger Y och trycker på Enter för att avsluta npm-processen. Det är viktigt att stoppa npm-servern så att den inte hamnar i konflikt med nästa uppsättning övningar.
-
Stäng fönster för Visual Studio-kod och kommandotolk.
Lektion 4
Syfte
Rendera formuläret till webb/mobil och andra gränssnitt som en headless-form.
Lektionssammanhang
I den här lektionen lär du dig hur du kan återge den adaptiva formen som du skapat tidigare som en rubrikfri form med hjälp av ett ramverk för React-spektrumdesign.
Utövning
Konfigurera en lokal databas med hjälp av React Starter-projektet:
-
Öppna kommandotolken med administratörsbehörighet.
-
Använd följande kommando på kommandotolken för att navigera till mappen c:\git
code language-shell cd c:\git
-
Använd följande kommando för att klona det adaptiva formuläret Reagera-startprojekt:
code language-shell git clone https://github.com/adobe/react-starter-kit-aem-headless-forms
-
Använd följande kommandon i den listade ordningen för att navigera till katalogen rea-starter-kit-aem-headless-forms och öppna Visual Studio Code.
code language-shell cd react-starter-kit-aem-headless-forms code .
Fönstret Visual Studio Code öppnas.
Så här återger du formuläret som finns i molntjänstens publiceringsmiljö:
-
Byt namn på filen env_template till .env-filen. Om du vill byta namn högerklickar du på filen env_template och väljer alternativet Byt namn .
-
Ange följande värden för variablerna i .env-filen. Spara filen när du har uppdaterat variablerna.
-
AEM_URL: Ange URL:en för molntjänstens publiceringsmiljö. Exempel:
https://publish-p105303-e986623.adobeaemcloud.com
-
AEM_FORM_PATH: Ange sökvägen för det adaptiva formuläret som skapades i föregående lektion. Exempel:
/content/forms/af/registration/
-
-
Öppna kommandofönstret, kontrollera att du är i katalogen reak-starter-kit-aem-headless-forms och kör följande kommando:
code language-shell npm install
-
Kör följande kommando i kommandotolken:
code language-shell npm start
Ovanstående kommando startar en lokal utvecklingsserver som skulle återge formulärdefinitionen som hämtades från AEM utan rubrik med hjälp av biblioteket React trum Front.
note note NOTE Om du får en tom skärm i webbläsaren efter att ha kört kommandot npm start
i mer än 3-4 minuter ändrar dulocalhost
i webbläsarens URL till 127.0.0.1 och trycker på Enter.
Låt oss kontrollera hur reglerna i den här rubrikfria formen verkställs:
-
Markera kryssrutan Markera kryssrutan för att få 5 % rabatt. Det efterföljande alternativet för att ansöka om kreditkort är inaktiverat.
-
Avmarkera Markera kryssrutan för att få 5 % rabatt för att aktivera kreditkortsalternativet.
Låt oss göra ändringar i formuläret på servern som företagsanvändare och automatiskt se ändringarna som återspeglas i det headless-formuläret.
-
Öppna AEM Forms gränssnitt i webbläsaren.
-
Markera formuläret
contactus
och klicka på Redigera. Formuläret öppnas i redigeraren för anpassade formulär. -
Markera fältet Telefonnummer och klicka på ikonen Redigera (pennikonen) i verktygsfältet. Om du inte kan se popup-verktygsfältet växlar du till redigeringsläget. Klicka på knappen Redigera överst till höger, vänster till Förhandsgranska .
-
Ändra etiketten till Mobilnummer. Klicka på ett tomt utrymme i formuläret så sparas ändringarna i formuläret.
Låt oss publicera det uppdaterade formuläret för att sprida ändringarna till den publicerade miljön.
-
Markera registreringsformuläret på fliken för AEM Forms-hanteringsgränssnittet och klicka på Avpublicera. Om knappen Avpublicera inte visas går du vidare till steg 3 och publicerar ändringarna direkt.
-
Klicka på Avpublicera. Klicka på Stäng i respektive dialogruta.
-
När webbläsaren har uppdaterats markerar du registreringsformuläret och klickar på Publicera.
-
Klicka på Publicera. Klicka på Stäng i respektive dialogruta.
-
Uppdatera webbläsarfliken med det headfria formuläret synligt. Observera att telefonnummeretiketten har ändrats till Mobilnummer.
-
Öppna fönstret Kommandotolk som används för att starta projektet responsstarter-kit-aem-headless-forms, tryck på CTRL+C och sedan
ange Y och tryck på Retur för att avsluta npm-processen. Det är viktigt att stoppa npm-servern så att den inte hamnar i konflikt med nästa uppsättning övningar. -
Stäng fönster för Visual Studio-kod och kommandotolk.
Lektion 5
Syfte
Rendera formuläret som ett headless-formulär med Google Material UI
Lektionssammanhang
I den här lektionen lär du dig att återge den adaptiva formen som tidigare skapats som ett headless-formulär med Google Material UI.
Utövning
Konfigurera en lokal databas med hjälp av startprojektet för materialgränssnittet:
-
Öppna kommandotolken med administratörsbehörighet.
-
Använd följande kommando på kommandotolken för att navigera till mappen c:\git:
code language-shell cd c:\git
-
Kör följande kommandon i den angivna ordningen för att skapa en mapp med namnet
mui
och navigera till mappenmui
med följande kommandon:code language-shell mkdir mui cd mui
-
Använd följande kommando för att klona det adaptiva formuläret Reagera-startprojekt:
code language-shell git clone -b mui-lab https://github.com/adobe/react-starter-kit-aem-headless-forms
-
Använd följande kommando i den listade ordningen för att navigera till mappen response-starter-kit-aem-headless-forms och öppna koden i Visual Studio-koden:
code language-shell cd react-starter-kit-aem-headless-forms code .
Så här återger du formuläret som finns i molntjänstens publiceringsmiljö:
-
Byt namn på filen env_template till filen .env . Om du vill byta namn högerklickar du på filen env_template och väljer Byt namn.
-
Ange följande värden för variablerna i .env-filen. Spara filen när du har uppdaterat variablerna. Använd växlingskombinationen CTRL + S för att spara filen.
-
AEM_URL: Ange URL:en för molntjänstens publiceringsmiljö. Exempel: https://publish-p105303-e986623.adobeaemcloud.com
-
AEM_FORM_PATH: Ange sökvägen för det adaptiva formuläret som skapades i föregående lektion. Till exempel /content/forms/af/registration/
-
-
Öppna kommandofönstret, kontrollera att du är i katalogen reak-starter-kit-aem-headless-forms och kör följande kommando:
code language-shell npm install
-
Kör följande kommando i kommandotolken:
code language-shell npm start
Kommandot startar en lokal utvecklingsserver och återger den formulärdefinition som hämtats från AEM på ett headless sätt med Google
Gränsbibliotek för materialgränssnitt.note note NOTE Om du får en tom skärm i webbläsaren efter att ha kört kommandot npm start
i mer än 3-4 minuter ändrar dulocalhost
i webbläsarens URL till 127.0.0.1 och trycker på Enter. -
Så här utvärderar du körningen av samma affärslogik i den här formuläråtergivningen:
Markera kryssrutan om du vill få 5 % rabatt. Det efterföljande alternativet Vill du ansöka om
We.Finance
företagsformulär? inaktiveras.
Lektion 6
Syfte
Skapa ett alternativt utseende och känsla för den headless-formen med materialvariationer för UI-komponenter
Lektionssammanhang
I den här lektionen lär du dig hur du skapar en alternativ representation av olika komponenter. Du använder materialgränssnitt för den adaptiva formen som skapades tidigare av företagsanvändaren.
Utövning
Uppdatera variationen av komponenterna i det headless-projektet. Så här ändrar du varianten för textindatakomponenten i användargränssnittet till OutlinedInput
:
-
I Visual Code navigerar du till textindatakomponenten genom att öppna filen
index.tsx
påsrc/components/textinput/index.tsx
. -
Lägg till
//
i början av kodraden 103. Raden konverteras till en kommentar.code language-shell //const Cmp = \'outlined\' === appliedCssClassNames ? OutlinedInput: Input;
-
Lägg till följande på rad 104 om du vill använda en annan variant av komponenten och spara filen. Använd växlingskombinationen CTRL + S för att spara filen.
code language-shell const Cmp = OutlinedInput;
Det är viktigt att använda korrekt skiftläge för varianten OutlinedInput, annars misslyckas kompileringen. Kompileringen av den lokala utvecklingsmiljön startar automatiskt i kommandotolken. Vänta tills följande meddelande visas
webpack 5.75.0 compiled with 3 warnings in 6659 ms
inside proxy req
setting new origin header
-
Uppdatera webbläsaren, om den inte uppdateras automatiskt, för att se hur textindatakomponenten använder en annan variant.
Den här ändringen sker för slutanvändare utan att formulärdefinitionen på AEM Forms Server ändras och gäller specifikt för headless
den aktuella kanalen. En webbkanal i det här labbet. -
Stäng fönster för Visual Studio-kod och kommandotolk.
Vanliga frågor och svar
Nästa steg
Nu vet ni hur ni bygger adaptiva formulär och levererar dem över alla kanaler med headless-formulär. Använd dessa kunskaper för att skapa skalbara, högkvalitativa datainhämtningsupplevelser oavsett var användarna är.