跳到主要内容

RxDBLocalAdapterCapabilityError

Defined in: packages/rxdb/src/RxDBError.ts:116

被配置为 sync.local 的适配器跑不了系统引导 —— 缺 RxDB.connect() 本地分支要调的成员。

Remarks​

继承 RxDBAdapterLocalBase 的适配器永远走不到这条错误:migrateSystemSchema() 与 completeBootstrap() 在基类上是有实现的具体方法,子类不写也继承得到。 它只服务于不继承基类的自定义适配器对象 —— 那里没有编译期约束。

之所以抛而不是跳过:这两步做的是系统表升级与引导窗收尾。此前 connect() 用 ?.() 调它们,缺失时静默略过,connect() 照常 resolve;故障要等到第一次读写才以 「列不存在」之类的面目出现,离根因隔着整个引导流程。

reconcileEntityIndexes 不在校验之列 —— 它在基类上就是可选成员(?:), 缺席是契约允许的形态,不是缺陷。

Example​

try {
await rxdb.connect('local');
} catch (error) {
if (error instanceof RxDBLocalAdapterCapabilityError) {
console.error(`${error.adapterName} is missing: ${error.missing.join(', ')}`);
}
}

Extends​

Constructors​

Constructor​

new RxDBLocalAdapterCapabilityError(adapterName, missing): RxDBLocalAdapterCapabilityError;

Defined in: packages/rxdb/src/RxDBError.ts:117

Parameters​

ParameterTypeDescription
adapterNamestring配置里 sync.local.adapter 的名字
missingreadonly string[]缺失的成员名,按声明顺序

Returns​

RxDBLocalAdapterCapabilityError

Overrides​

RxDBError.constructor

Properties​

adapterName​

readonly adapterName: string;

Defined in: packages/rxdb/src/RxDBError.ts:119

配置里 sync.local.adapter 的名字


cause?​

optional cause?: unknown;

Defined in: node_modules/.pnpm/typescript@6.0.3_patch_hash=ef3c2292deb88eb14130359d5acc1febc0226af46b7b945db6c7250c6cb4efbb/node_modules/typescript/lib/lib.es2022.error.d.ts:24

Inherited from​

RxDBError.cause


message​

message: string;

Defined in: node_modules/.pnpm/typescript@6.0.3_patch_hash=ef3c2292deb88eb14130359d5acc1febc0226af46b7b945db6c7250c6cb4efbb/node_modules/typescript/lib/lib.es5.d.ts:1075

Inherited from​

RxDBError.message


missing​

readonly missing: readonly string[];

Defined in: packages/rxdb/src/RxDBError.ts:121

缺失的成员名,按声明顺序


name​

name: string;

Defined in: node_modules/.pnpm/typescript@6.0.3_patch_hash=ef3c2292deb88eb14130359d5acc1febc0226af46b7b945db6c7250c6cb4efbb/node_modules/typescript/lib/lib.es5.d.ts:1074

Inherited from​

RxDBError.name


stack?​

optional stack?: string;

Defined in: node_modules/.pnpm/typescript@6.0.3_patch_hash=ef3c2292deb88eb14130359d5acc1febc0226af46b7b945db6c7250c6cb4efbb/node_modules/typescript/lib/lib.es5.d.ts:1076

Inherited from​

RxDBError.stack


stackTraceLimit​

static stackTraceLimit: number;

Defined in: node_modules/.pnpm/@types+node@26.6.3/node_modules/@types/node/globals.d.ts:67

The Error.stackTraceLimit property specifies the number of stack frames collected by a stack trace (whether generated by new Error().stack or Error.captureStackTrace(obj)).

The default value is 10 but may be set to any valid JavaScript number. Changes will affect any stack trace captured after the value has been changed.

If set to a non-number value, or set to a negative number, stack traces will not capture any frames.

Inherited from​

RxDBError.stackTraceLimit

Methods​

captureStackTrace()​

static captureStackTrace(targetObject, constructorOpt?): void;

Defined in: node_modules/.pnpm/@types+node@26.6.3/node_modules/@types/node/globals.d.ts:51

Creates a .stack property on targetObject, which when accessed returns a string representing the location in the code at which Error.captureStackTrace() was called.

const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack; // Similar to `new Error().stack`

The first line of the trace will be prefixed with ${myObject.name}: ${myObject.message}.

The optional constructorOpt argument accepts a function. If given, all frames above constructorOpt, including constructorOpt, will be omitted from the generated stack trace.

The constructorOpt argument is useful for hiding implementation details of error generation from the user. For instance:

function a() {
b();
}

function b() {
c();
}

function c() {
// Create an error without stack trace to avoid calculating the stack trace twice.
const { stackTraceLimit } = Error;
Error.stackTraceLimit = 0;
const error = new Error();
Error.stackTraceLimit = stackTraceLimit;

// Capture the stack trace above function b
Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
throw error;
}

a();

Parameters​

ParameterType
targetObjectobject
constructorOpt?Function

Returns​

void

Inherited from​

RxDBError.captureStackTrace


prepareStackTrace()​

static prepareStackTrace(err, stackTraces): any;

Defined in: node_modules/.pnpm/@types+node@26.6.3/node_modules/@types/node/globals.d.ts:55

Parameters​

ParameterType
errError
stackTracesCallSite[]

Returns​

any

See​

https://v8.dev/docs/stack-trace-api#customizing-stack-traces

Inherited from​

RxDBError.prepareStackTrace