RxdbFileStorage
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:254
Constructors
Constructor
new RxdbFileStorage(
rxdb,
options?,
entityType?,
objectUrls?): RxdbFileStorage;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:271
Parameters
| Parameter | Type | Default value |
|---|---|---|
rxdb | RxDB | undefined |
options | RxDBStoragePluginOptions | {} |
entityType | typeof StorageFileMeta | StorageFileMeta |
objectUrls | ObjectUrlRegistry | ... |
Returns
RxdbFileStorage
Accessors
activeObjectUrlCount
Get Signature
get activeObjectUrlCount(): number;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:267
Returns
number
Methods
clear()
clear(path?): Promise<void>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:648
Parameters
| Parameter | Type |
|---|---|
path? | string |
Returns
Promise<void>
createDirectory()
createDirectory(name, options?): Promise<string>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:504
Parameters
| Parameter | Type |
|---|---|
name | string |
options | CreateDirectoryOptions |
Returns
Promise<string>
createObjectUrl()
createObjectUrl(fileId): Promise<string>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:389
Parameters
| Parameter | Type |
|---|---|
fileId | string |
Returns
Promise<string>
delete()
delete(fileId): Promise<void>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:627
Parameters
| Parameter | Type |
|---|---|
fileId | string |
Returns
Promise<void>
destroy()
destroy(): void;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:680
Returns
void
download()
download(fileId, options?): Promise<void>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:398
Parameters
| Parameter | Type |
|---|---|
fileId | string |
options | DownloadOptions |
Returns
Promise<void>
fetch()
fetch(opfsPath, options): Promise<Blob>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:348
从远程 URL 拉取资源并持久化到 OPFS。
行为:
- 若
opfsPath已存在缓存,直接返回缓存 Blob,不发请求(永久缓存,不做 ETag/TTL 判定)。 - 同一路径的并发调用共享同一 in-flight Promise;mimeType 不一致的后到 caller 会等 in-flight 完成后从缓存读取(此时 OPFS 已就绪),独立应用自己的 mimeType 返回 — 但 不会修改已落盘的 meta.mimeType:首个完成的 caller 决定 meta 上的 mime。
navigator.onLine === false立即抛 StorageOfflineError。- 响应 MIME 取
options.mimeType??Content-Type头(自动 strip 参数);两者都缺抛 StorageMimeTypeMissingError。 options.signal已 abort 立即抛AbortError,下载中途 abort 不会污染缓存。
Parameters
| Parameter | Type | Description |
|---|---|---|
opfsPath | string | OPFS 内的相对路径(如 images/foo.png),将规范化后作为缓存 key。 |
options | FetchRemoteOptions | 见 FetchRemoteOptions。 |
Returns
Promise<Blob>
持久化到 OPFS 的 Blob,type 等于最终 MIME。
Remark
cached 命中分支:options.mimeType 仅影响本次返回 Blob 的 type,
不修改已存的 meta.mimeType;下次通过 read(meta.id) 读取仍是原 mime。
getMeta()
getMeta(fileId): Promise<StorageFileMeta | null>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:445
Parameters
| Parameter | Type |
|---|---|
fileId | string |
Returns
Promise<StorageFileMeta | null>
init()
init(): Promise<void>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:278
Returns
Promise<void>
list()
list(options?): Promise<StorageFileMeta[]>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:450
Parameters
| Parameter | Type |
|---|---|
options | ListOptions |
Returns
Promise<StorageFileMeta[]>
listEntries()
listEntries(options?): Promise<StorageBrowserEntry[]>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:461
Parameters
| Parameter | Type |
|---|---|
options | ListOptions |
Returns
Promise<StorageBrowserEntry[]>
preview()
preview(fileId): Promise<StoragePreviewResult>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:379
Parameters
| Parameter | Type |
|---|---|
fileId | string |
Returns
Promise<StoragePreviewResult>
read()
read(fileId): Promise<Blob>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:320
Parameters
| Parameter | Type |
|---|---|
fileId | string |
Returns
Promise<Blob>
rename()
rename(
fileId,
newName,
options?): Promise<StorageFileMeta>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:512
Parameters
| Parameter | Type |
|---|---|
fileId | string |
newName | string |
options | RenameOptions |
Returns
Promise<StorageFileMeta>
renameDirectory()
renameDirectory(
directoryPath,
newName,
options?): Promise<string>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:554
Parameters
| Parameter | Type |
|---|---|
directoryPath | string |
newName | string |
options | RenameOptions |
Returns
Promise<string>
revokeObjectUrl()
revokeObjectUrl(url): void;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:394
Parameters
| Parameter | Type |
|---|---|
url | string |
Returns
void
upload()
upload(file, options?): Promise<StorageFileMeta>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:282
Parameters
| Parameter | Type |
|---|---|
file | File |
options | UploadOptions |
Returns
Promise<StorageFileMeta>
watch()
watch(fileId): Observable<StorageFileMeta | null>;
Defined in: packages/rxdb-plugin-storage/src/storage.service.ts:634
Parameters
| Parameter | Type |
|---|---|
fileId | string |
Returns
Observable<StorageFileMeta | null>