Dokumen ini diterjemahkan oleh AI. Untuk ketidakakuratan apa pun, silakan lihat versi bahasa Inggris
Untuk file yang sudah diunggah, antarmuka pengguna frontend dapat menampilkan konten pratinjau yang berbeda berdasarkan tipe file. Bidang lampiran pada pengelola file memiliki pratinjau file berbasis browser (tertanam dalam iframe) yang mendukung sebagian besar format file (seperti gambar, video, audio, dan PDF) untuk pratinjau langsung di browser. Ketika format file tidak didukung untuk pratinjau browser, atau jika ada kebutuhan interaksi pratinjau khusus, Anda dapat memperluas komponen pratinjau berdasarkan tipe file.
Misalnya, jika Anda ingin memperluas komponen carousel untuk file gambar, Anda dapat menggunakan kode berikut:
attachmentFileTypes adalah objek entri yang disediakan dalam paket @nocobase/client untuk memperluas tipe file. Gunakan metode add yang disediakannya untuk memperluas objek deskriptor tipe file.
Setiap tipe file harus mengimplementasikan metode match() untuk memeriksa apakah tipe file memenuhi persyaratan. Dalam contoh ini, metode yang disediakan oleh paket mime-match digunakan untuk memeriksa atribut mimetype file. Jika cocok dengan tipe image/*, maka dianggap sebagai tipe file yang perlu diproses. Jika tidak cocok, maka akan kembali ke penanganan tipe bawaan.
Properti Previewer pada objek deskriptor tipe adalah komponen yang digunakan untuk pratinjau. Ketika tipe file cocok, komponen ini akan dirender untuk pratinjau. Umumnya disarankan untuk menggunakan komponen tipe modal (seperti <Modal /> dll.) sebagai kontainer dasar, kemudian menempatkan konten pratinjau dan interaktif ke dalam komponen tersebut untuk mengimplementasikan fungsionalitas pratinjau.
attachmentFileTypesattachmentFileTypes adalah sebuah instance global, diimpor dari @nocobase/client:
attachmentFileTypes.add()Mendaftarkan objek deskriptor tipe file baru ke pusat registrasi tipe file. Tipe objek deskriptor adalah AttachmentFileType.
AttachmentFileTypematch()Metode pencocokan format file.
Parameter file yang diteruskan adalah objek data untuk file yang diunggah, berisi properti terkait yang dapat digunakan untuk penentuan tipe:
mimetype: Deskripsi mimetypeextname: Ekstensi file, termasuk tanda "."path: Jalur penyimpanan relatif fileurl: URL fileNilai kembaliannya adalah tipe boolean, menunjukkan hasil kecocokan.
PreviewerKomponen React untuk pratinjau file.
Parameter Props yang diteruskan adalah:
index: Indeks file dalam daftar lampiranlist: Daftar lampiranonSwitchIndex: Metode untuk mengganti indeksonSwitchIndex dapat menerima nilai indeks apa pun dari list untuk beralih ke file lain. Jika null digunakan sebagai parameter untuk beralih, komponen pratinjau akan langsung ditutup.