Esta documentación ha sido traducida automáticamente por IA.
Heredar StorageType
Cree una nueva clase e implemente los métodos make() y delete(). Si es necesario, sobrescriba hooks como getFileURL(), getFileStream() y getFileData().
Ejemplo:
beforeLoad o load del plugin:Después de registrarlo, la configuración de almacenamiento aparecerá en el recurso storages, igual que los tipos integrados. La configuración proporcionada por StorageType.defaults() se puede usar para autocompletar formularios o inicializar registros predeterminados.
Para los archivos ya cargados, puede mostrar distintos contenidos de vista previa en la interfaz según el tipo de archivo. El campo de adjuntos del gestor de archivos incluye una vista previa integrada basada en el navegador (incrustada en un iframe), que permite previsualizar la mayoría de los formatos (como imágenes, videos, audio y PDF) directamente en el navegador. Cuando un formato no está soportado por el navegador o se requieren interacciones especiales de vista previa, puede extender el componente de vista previa por tipo de archivo.
Por ejemplo, si desea integrar una vista previa en línea personalizada para archivos Office, puede usar el siguiente código:
Aquí, filePreviewTypes es el objeto de entrada proporcionado por @nocobase/plugin-file-manager/client para extender las vistas previas de archivos. Use su método add para añadir un descriptor de tipo de archivo.
Cada tipo de archivo debe implementar un método match() para comprobar si cumple los requisitos. En el ejemplo, se usa matchMimetype para verificar el atributo mimetype del archivo. Si coincide con el tipo docx, se considera el tipo a manejar. Si no coincide, se utilizará el manejo de tipos integrado.
La propiedad Previewer del descriptor de tipo es el componente usado para la vista previa. Cuando el tipo coincide, se renderiza este componente en el cuadro de vista previa. Puede devolver cualquier vista React (como un iframe, un reproductor o un gráfico).
filePreviewTypesfilePreviewTypes es una instancia global, importada desde @nocobase/plugin-file-manager/client:
filePreviewTypes.add()Registra un nuevo descriptor de tipo de archivo en el registro. El tipo del descriptor es FilePreviewType.
FilePreviewTypematch()Método de coincidencia de formato de archivo.
El parámetro de entrada file es el objeto de datos de un archivo subido, que contiene propiedades relevantes para la comprobación del tipo:
mimetype: descripción del mimetypeextname: extensión del archivo, incluida la "."path: ruta de almacenamiento relativa del archivourl: URL del archivoDevuelve un boolean que indica si coincide.
getThumbnailURLDevuelve la URL de la miniatura usada en la lista de archivos. Si el valor es vacío, se usará la imagen de marcador de posición integrada.
PreviewerUn componente React para la vista previa de archivos.
Las props de entrada son:
file: el objeto de archivo actual (puede ser una URL en string o un objeto que contiene url/preview)index: índice del archivo en la listalist: lista de archivos