cardTemplate
Beschreibung
Optional. Erzeugt und wendet eine benutzerdefinierte HTML-Vorlage für die Karte an.
Verwendung
function cardTemplate ({ cardFields, selected, dragging, cardShape }){
return "HTML template of the card";
};
Parameter
Die Callback-Funktion erhält ein Objekt mit folgenden Eigenschaften:
cardFields
- enthält die Daten der Karteselected
- gibt an, ob die Karte ausgewählt istdragging
- gibt an, ob die Karte gerade gezogen wirdcardShape
- das Konfigurationsobjekt der Karte
important
Um ein Kontextmenü zur Karten-Vorlage hinzuzufügen, fügen Sie ein benutzerdefiniertes Symbol im Markup ein und verwenden Sie das Attribut data-menu-id=${cardFields.id}
, wie im folgenden Beispiel gezeigt.
Beispiel
const cardTemplate = ({ cardFields, selected, dragging, cardShape }) => {
const { label, color, id } = cardFields;
if (selected) {
return `
<div className="custom-card" style={{padding: '20px'}}>
<div className="status-color" style={{background: '${color}'}}></div>
<div data-menu-id=${id} >
<i className="wxi-dots-v"></i>
</div>
Selected:${label}
</div>
`;
}
return `
<div className="custom-card" style={{padding: '20px'}}>
<div className="status-color" style={{background: '${color}'}}></div>
<div data-menu-id=${id} >
<i className="wxi-dots-v"></i>
</div>
${label}
</div>
`;
}
new kanban.Kanban("#root", {
cards,
columns,
cardTemplate: kanban.template(card => cardTemplate(card)),
// other parameters
});
Änderungsprotokoll: Unterstützung für Kontextmenüs wurde in Version 1.4 eingeführt
Verwandte Artikel: Anpassung
Verwandte Beispiel: Kanban. Custom card