Detta dokument har översatts av AI. För eventuella felaktigheter, se den engelska versionen
Ärv StorageType
Skapa en ny klass och implementera metoderna make() och delete(). Vid behov, åsidosätt hooks som getFileURL(), getFileStream() och getFileData().
Exempel:
beforeLoad- eller load-livscykel:Efter registreringen visas lagringskonfigurationen i resursen storages, precis som de inbyggda typerna. Konfigurationen från StorageType.defaults() kan användas för att autofylla formulär eller initiera standardposter.
För uppladdade filer kan du visa olika förhandsvisningar i frontend beroende på filtyp. Filhanterarens bilagefält har en inbyggd webbläsarbaserad förhandsvisning (inbäddad i en iframe), som stödjer de flesta format (som bilder, video, ljud och PDF) direkt i webbläsaren. När ett filformat inte stöds av webbläsaren eller när särskilda förhandsvisningsinteraktioner krävs kan du utöka förhandsvisningskomponenten baserad på filtyp.
Om du till exempel vill integrera en anpassad onlineförhandsvisning för Office-filer kan du använda följande kod:
Här är filePreviewTypes instegsobjektet som tillhandahålls av @nocobase/plugin-file-manager/client för att utöka filförhandsvisningar. Använd metoden add för att lägga till en filtypbeskrivare.
Varje filtyp måste implementera en match()-metod för att kontrollera om filtypen uppfyller kraven. I exemplet används matchMimetype för att kontrollera filens mimetype-attribut. Om det matchar docx-typen betraktas den som den typ som ska hanteras. Om den inte matchar används den inbyggda typhanteringen.
Egenskapen Previewer på typbeskrivaren är komponenten som används för förhandsvisning. När filtypen matchar renderas komponenten i förhandsvisningsdialogen. Du kan returnera valfri React-vy (t.ex. en iframe, spelare eller diagram).
filePreviewTypesfilePreviewTypes är en global instans som importeras från @nocobase/plugin-file-manager/client:
filePreviewTypes.add()Registrerar ett nytt filtypbeskrivningsobjekt i filtypregistret. Typen på beskrivningsobjektet är FilePreviewType.
FilePreviewTypematch()Metod för matchning av filformat.
Indataparametern file är dataobjektet för en uppladdad fil och innehåller relevanta egenskaper för typkontroll:
mimetype: beskrivning av mimetypeextname: filändelse, inklusive "."path: relativ lagringssökväg för filenurl: filens URLReturnerar ett boolean som anger om det matchar.
getThumbnailURLReturnerar miniatyr-URL som används i fillistan. Om returvärdet är tomt används den inbyggda platshållarbilden.
PreviewerEn React-komponent för att förhandsgranska filer.
Inkommande props är:
file: aktuellt filobjekt (kan vara en sträng-URL eller ett objekt med url/preview)index: index för filen i listanlist: fillista