在卡片上顯示表單
下列程式碼是用來在使用者按一下卡片時顯示表單。 使用useParams函式從url中擷取要顯示的表單路徑。
import Form from './components/Form';
import PlainText from './components/plainText';
import TextField from './components/TextField';
import Button from './components/Button';
import Panel from './components/Panel';
import { useState,useEffect } from "react";
import {Link, useParams} from 'react-router-dom';
import { AdaptiveForm } from "@aemforms/af-react-renderer";
export default function DisplayForm()
{
const [selectedForm, setForm] = useState("");
const params = useParams();
const extendMappings =
{
'plain-text' : PlainText,
'text-input' : TextField,
'button' : Button,
'form': Form
};
const getAFForm = async () =>
{
const resp = await fetch(`/adobe/forms/af/${params.formID}`);
let formJSON = await resp.json();
console.log("The contact form json is "+formJSON);
setForm(formJSON.afModelDefinition)
}
useEffect( ()=>{
getAFForm()
},[]);
return(
<div>
<AdaptiveForm mappings={extendMappings} formJson={selectedForm}/>
</div>
)
}
後續步驟
recommendation-more-help
8de24117-1378-413c-a581-01e660b7163e