
Jezik 🇸🇮 Slovenščina
Dokumentacija
Začetek
Uporaba
Konfiguracija
Add Comments to Your SolidJS App
To je uradna knjižnica SolidJS za FastComments.
Vdelajte gradnike za komentiranje v živo, klepet in recenzije v svojo aplikacijo SolidJS.
Repozitorij
Predstavitev v živo 
Preizkusite vsak pripomoček v živo na https://fastcomments.com/commenting-system-for-solidjs.
Uporaba 
import { FastCommentsCommentWidget } from 'fastcomments-solidjs';
export default function App() {
return <FastCommentsCommentWidget tenantId="demo" urlId="some-page-id" />;
}
Reagiranje na spremembe konfiguracije (imperativni vmesnik) 
Solid samodejno ne sledi globokim mutacijam poljubnih objektov, zato je treba spremembe konfiguracije po prvem renderiranju eksplicitno potisniti. Vsak widget sprejme apiRef, ki vrne ročaj; iz createEffect pokličite handle.update(partial), da poganjate reaktivnost:
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() je varno klicati kadarkoli:
- Pred nalaganjem skripte: partial se shrani in uporabi pri init.
- Med async init (reviews-summary, user-activity-feed): partial se postavi v čakalno vrsto in uporabi, ko se callback razreši.
- Po init: ga posreduje neposredno metodi
.update()živega widgeta.
Imperativni API ročaja
interface WidgetHandle<Config> {
getInstance: () => WidgetInstance | null; // najnovejša živa instanca (ali null pred mount)
onInstance: (cb: (instance: WidgetInstance) => void) => void; // sproži se, ko je instanca pripravljena
update: (partial: Partial<Config>) => void; // združi in potisni konfiguracijo
}
Uporabite getInstance() za imperativna dejanja, ki jih .update() ne pokriva, npr. openProfile:
const openProfile = () =>
(handle?.getInstance() as { openProfile?: (o: { userId: string }) => void } | null)
?.openProfile?.({ userId: 'demo' });
Komponente 
Vsak pripomoček iz fastcomments-react je na voljo pod istim imenom:
| Komponenta | Tip ročaja | Naložena vdelava |
|---|---|---|
FastCommentsCommentWidget |
FastCommentsCommentWidgetHandle |
Glavni pripomoček za komentiranje v živo |
FastCommentsCommentCountWidget |
FastCommentsCommentCountWidgetHandle |
Vrstični števec komentarjev |
FastCommentsLiveChatWidget |
FastCommentsLiveChatWidgetHandle |
Pretakajoči pripomoček za klepet v živo |
FastCommentsCollabChatWidget |
FastCommentsCollabChatWidgetHandle |
Sodelovalni klepet, pritrjen na besedilo |
FastCommentsImageChatWidget |
FastCommentsImageChatWidgetHandle |
Komentarji na sliko po regijah |
FastCommentsRecentCommentsWidget |
FastCommentsRecentCommentsWidgetHandle |
Tok nedavnih komentarjev |
FastCommentsRecentDiscussionsWidget |
FastCommentsRecentDiscussionsWidgetHandle |
Tok nedavnih razprav |
FastCommentsReviewsSummaryWidget |
FastCommentsReviewsSummaryWidgetHandle |
Povzetek ocen z zvezdicami |
FastCommentsTopPagesWidget |
FastCommentsTopPagesWidgetHandle |
Lestvica najbolj komentiranih strani |
FastCommentsUserActivityFeedWidget |
FastCommentsUserActivityFeedWidgetHandle |
Časovnica aktivnosti po uporabniku |
Pripomočki, ki se pritnejo na obstoječi element
FastCommentsCollabChatWidget and FastCommentsImageChatWidget mount into a caller-supplied
element. Posredujte dostopnik targetRef, ki vrne element po namestitvi:
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}
/>
</>
);
}
Regije
Posredujte region="eu" za usmerjanje prometa vdelav prek EU grozda.
Potrebujete pomoč?
Če naletite na težave ali imate vprašanja glede knjižnice SolidJS, prosimo:
Prispevanje
Prispevki so dobrodošli! Prosimo, obiščite GitHub repozitorij za smernice za prispevanje.