Dokumen ini diterjemahkan oleh AI. Untuk ketidakakuratan apa pun, silakan lihat versi bahasa Inggris
Mewarisi StorageType
Buat kelas baru dan implementasikan metode make() dan delete(). Jika perlu, timpa hook seperti getFileURL(), getFileStream(), dan getFileData().
Contoh:
beforeLoad atau load plugin:Setelah didaftarkan, konfigurasi penyimpanan akan muncul di resource storages, sama seperti tipe bawaan. Konfigurasi yang disediakan oleh StorageType.defaults() dapat digunakan untuk mengisi formulir secara otomatis atau menginisialisasi record default.
Untuk file yang sudah diunggah, Anda dapat menampilkan konten pratinjau yang berbeda di antarmuka frontend berdasarkan tipe file. Field lampiran pada pengelola file memiliki pratinjau file berbasis browser (disematkan dalam iframe), yang mendukung pratinjau sebagian besar format (seperti gambar, video, audio, dan PDF) langsung di browser. Ketika format file tidak didukung oleh browser atau memerlukan interaksi pratinjau khusus, Anda dapat memperluas komponen pratinjau berdasarkan tipe file.
Misalnya, jika Anda ingin mengintegrasikan pratinjau online kustom untuk file Office, Anda dapat menggunakan kode berikut:
Di sini, filePreviewTypes adalah objek entry yang disediakan oleh @nocobase/plugin-file-manager/client untuk memperluas pratinjau file. Gunakan metode add untuk menambahkan objek deskripsi tipe file.
Setiap tipe file harus mengimplementasikan metode match() untuk memeriksa apakah tipe file memenuhi persyaratan. Dalam contoh, matchMimetype digunakan untuk memeriksa atribut mimetype file. Jika cocok dengan tipe docx, maka dianggap tipe file yang harus ditangani. Jika tidak cocok, akan digunakan penanganan tipe bawaan.
Properti Previewer pada objek deskripsi tipe adalah komponen untuk pratinjau. Ketika tipe file cocok, komponen ini akan dirender dalam dialog pratinjau. Anda dapat mengembalikan tampilan React apa pun (misalnya iframe, pemutar, atau grafik).
filePreviewTypesfilePreviewTypes adalah instance global yang diimpor dari @nocobase/plugin-file-manager/client:
filePreviewTypes.add()Mendaftarkan objek deskripsi tipe file baru ke registri tipe file. Tipe objek deskripsi adalah FilePreviewType.
FilePreviewTypematch()Metode pencocokan format file.
Parameter masukan file adalah objek data file yang diunggah, berisi properti relevan untuk pemeriksaan tipe:
mimetype: deskripsi mimetypeextname: ekstensi file, termasuk "."path: jalur penyimpanan relatif fileurl: URL fileMengembalikan nilai boolean yang menunjukkan apakah cocok.
getThumbnailURLMengembalikan URL thumbnail yang digunakan pada daftar file. Jika nilai yang dikembalikan kosong, gambar placeholder bawaan akan digunakan.
PreviewerKomponen React untuk pratinjau file.
Props yang diterima adalah:
file: objek file saat ini (bisa berupa URL string atau objek yang berisi url/preview)index: indeks file dalam daftarlist: daftar file