
Sprog 🇩🇰 Dansk
Dokumentation
Kom i gang
Brug
Konfiguration
Tilføj kommentarer til din SolidJS-app
Dette er det officielle SolidJS-bibliotek til FastComments.
Integrer widgets til live-kommentarer, chat og anmeldelser i din SolidJS-app.
Arkiv
AI-kodningsagenter 
Giv din kodeagent den FastComments‑kontekst, den har brug for – widgets, konfiguration, Secure SSO, REST‑API’en og SDK’erne:
npx skills add fastcomments/skills
Fungerer med Claude Code, Codex, Cursor, Copilot, Gemini og alle andre agenter, som skills CLI understøtter.
Live-demo 
Prøv hver widget live på https://fastcomments.com/commenting-system-for-solidjs/.
Brug 
import { FastCommentsCommentWidget } from 'fastcomments-solidjs';
export default function App() {
return <FastCommentsCommentWidget tenantId="demo" urlId="some-page-id" />;
}
Reagere på konfigurationsændringer (imperativ håndtering) 
Solid sporer ikke automatisk dybe mutationer på vilkårlige objekter, så
konfigurationsændringer efter første render skal pushes eksplicit. Hver widget
accepterer en apiRef, der returnerer et handle; kald handle.update(partial) fra
en createEffect for at drive reaktivitet:
import { createEffect, createSignal } from 'solid-js';
import { FastCommentsCommentWidget, type FastCommentsCommentWidgetHandle } from 'fastcomments-solidjs';
export default function Paginated() {
const [page, setPage] = createSignal(0);
let handle: FastCommentsCommentWidgetHandle | undefined;
createEffect(() => handle?.update({ urlId: `product-${page()}` }));
return (
<>
<button onClick={() => setPage(page() + 1)}>next</button>
<FastCommentsCommentWidget
apiRef={(h) => (handle = h)}
tenantId="demo"
urlId={`product-${page()}`}
/>
</>
);
}
update() kan trygt kaldes når som helst:
- Før scriptet er indlæst: den partielle konfiguration gemmes og anvendes ved init.
- Under en asynkron init (reviews-summary, user-activity-feed): den partielle konfiguration sættes i kø og anvendes, når callback'en resolves.
- Efter init: den videresendes direkte til den live widgets
.update()-metode.
Imperativt handle-API
interface WidgetHandle<Config> {
getInstance: () => WidgetInstance | null; // seneste live-instans (eller null før mount)
onInstance: (cb: (instance: WidgetInstance) => void) => void; // udløses én gang, når instansen er klar
update: (partial: Partial<Config>) => void; // merge-and-push konfiguration
}
Brug getInstance() til imperative handlinger, der ikke er dækket af .update(), f.eks. openProfile:
const openProfile = () =>
(handle?.getInstance() as { openProfile?: (o: { userId: string }) => void } | null)
?.openProfile?.({ userId: 'demo' });
Komponenter 
Hver widget fra fastcomments-react er tilgængelig under samme navn:
| Component | Handle type | Embed loaded |
|---|---|---|
FastCommentsCommentWidget | FastCommentsCommentWidgetHandle | Flagship live-kommenterings-widget |
FastCommentsCommentCountWidget | FastCommentsCommentCountWidgetHandle | Inline badge med kommentarantal |
FastCommentsLiveChatWidget | FastCommentsLiveChatWidgetHandle | Streaming live-chat-widget |
FastCommentsCollabChatWidget | FastCommentsCollabChatWidgetHandle | Tekst-ankret samarbejds-chat |
FastCommentsImageChatWidget | FastCommentsImageChatWidgetHandle | Regionsbaserede billedkommentarer |
FastCommentsRecentCommentsWidget | FastCommentsRecentCommentsWidgetHandle | Feed med nylige kommentarer |
FastCommentsRecentDiscussionsWidget | FastCommentsRecentDiscussionsWidgetHandle | Feed med nylige diskussioner |
FastCommentsReviewsSummaryWidget | FastCommentsReviewsSummaryWidgetHandle | Opsummering af stjernebedømmelser |
FastCommentsTopPagesWidget | FastCommentsTopPagesWidgetHandle | Top-liste over mest kommenterede sider |
FastCommentsUserActivityFeedWidget | FastCommentsUserActivityFeedWidgetHandle | Per-bruger aktivitetstidslinje |
Widgets der tilknyttes et eksisterende element
FastCommentsCollabChatWidget og FastCommentsImageChatWidget monteres i et element leveret af kaldende kode. Pass en targetRef accessor som returnerer elementet, når det er monteret:
import { FastCommentsImageChatWidget } from 'fastcomments-solidjs';
export default function ImageChat() {
let img: HTMLImageElement | undefined;
return (
<>
<img ref={img} src="/screenshot.png" alt="" />
<FastCommentsImageChatWidget
tenantId="demo"
urlId="my-image"
targetRef={() => img}
/>
</>
);
}
Regioner
Angiv region="eu" for at rute widget-trafik gennem EU-klyngen.
Brug for hjælp?
Hvis du støder på problemer eller har spørgsmål om SolidJS-biblioteket, så:
Bidrag
Bidrag er velkomne! Besøg venligst GitHub-repositoriet for retningslinjer for bidrag.