Antworten
Um Antworten einzuholen, kann die überall verfügbare Komponente Answer
verwendet werden (sie muss nicht importiert werden). Abhängig vom übergebenen Typ wird die Antwort in einer anderen Form dargestellt.
string
<String />
Komponente 👉 String- Einzeilige Antwort
text
<QuillV2 />
Komponente 👉 QuillV2- Mehrzeilige Antwort mit WYSIWYG-Editor
- optionaler Typ:
quill-v2
- Mehrzeilige Antwort mit WYSIWYG-Editor
state
<TaskState />
Komponente 👉 TaskState- Zustandsauswahl
- optionaler Typ:
task-state
- Zustandsauswahl
<Answer type="state" label="Fertig?" id="5404e731-fd66-42d9-9f61-0299df6a032b" />
<Answer type="string" id="259a2608-ee20-4f76-b558-09bf9871c235" />
<Answer type="text" id="c85a2c52-cdce-42ad-82c9-9924b3a9fa61" />
http://localhost:3000
Fertig?
Laden...
Installation
Code
src/components/Answer
src/theme/MDXComponents.tsx
import Answer from '@tdev-components/Answer';
src/theme/MDXComponents.tsx
import MDXComponents from '@theme-original/MDXComponents';
import Answer from '@tdev-components/Answer';
export default {
// Re-use the default mapping
...MDXComponents,
Answer: Answer,
};
Voraussetzung
Damit auch TaskStates, die von einer <Answer />
Komponente dargestellt werden, in die Seitenübersicht aufgenommen werden, braucht es das Plugin remark-enumerate-components
mit der Konfiguration
docusaurus.config.ts
import enumerateAnswersPlugin from './src/plugins/remark-enumerate-components/plugin';
const REMARK_PLUGINS = [
/* ... */
[
[
enumerateAnswersPlugin,
{
componentsToEnumerate: ['Answer', /*...*/],
}
]
]
];