跳到主要内容

OperatorRegistry

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:27

操作符注册表服务 管理可用操作符及其元数据

Constructors​

Constructor​

new OperatorRegistry(options?): OperatorRegistry;

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:34

Parameters​

ParameterTypeDescription
options?OperatorRegistryOptions初始注册的操作符集合

Returns​

OperatorRegistry

Accessors​

size​

Get Signature​

get size(): number;

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:32

获取操作符数量

Returns​

number

Methods​

clear()​

clear(): void;

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:123

清空所有操作符

Returns​

void


get()​

get(key): OperatorDefinition | undefined;

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:70

获取操作符定义

Parameters​

ParameterTypeDescription
keyOperatorName操作符键值

Returns​

OperatorDefinition | undefined

操作符定义或 undefined


getAll()​

getAll(): OperatorDefinition[];

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:76

获取所有操作符

Returns​

OperatorDefinition[]

所有操作符定义数组


getForField()​

getForField(field): OperatorDefinition[];

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:96

根据字段元数据获取适用的操作符

Parameters​

ParameterTypeDescription
fieldFieldMetadata字段元数据

Returns​

OperatorDefinition[]

适用的操作符数组


getForType()​

getForType(fieldType): OperatorDefinition[];

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:89

根据字段类型获取适用的操作符

Parameters​

ParameterTypeDescription
fieldTypePropertyType字段类型

Returns​

OperatorDefinition[]

适用的操作符数组

Example​

const stringOperators = registry.getForType('string');
// [{ key: '=', ... }, { key: 'contains', ... }, ...]

getValueType()​

getValueType(operatorKey): "none" | "range" | "array" | "subquery" | "single" | undefined;

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:119

获取操作符的值类型

Parameters​

ParameterTypeDescription
operatorKeyOperatorName操作符键值

Returns​

"none" | "range" | "array" | "subquery" | "single" | undefined

值类型


isOperatorSupportedForField()​

isOperatorSupportedForField(operatorKey, field): boolean;

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:112

检查操作符是否支持指定字段

Parameters​

ParameterTypeDescription
operatorKeyOperatorName操作符键值
fieldFieldMetadata字段元数据

Returns​

boolean

是否支持


isOperatorSupportedForType()​

isOperatorSupportedForType(operatorKey, fieldType): boolean;

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:104

检查操作符是否支持指定类型

Parameters​

ParameterTypeDescription
operatorKeyOperatorName操作符键值
fieldTypePropertyType字段类型

Returns​

boolean

是否支持


register()​

register(operator): void;

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:50

注册新操作符

Parameters​

ParameterTypeDescription
operatorOperatorDefinition操作符定义

Returns​

void

Example​

registry.register({
key: 'contains',
label: '包含',
applicableTypes: ['string'],
valueType: 'single'
});

registerMany()​

registerMany(operators): void;

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:56

批量注册操作符

Parameters​

ParameterTypeDescription
operatorsOperatorDefinition[]操作符定义数组

Returns​

void


reset()​

reset(): void;

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:127

重置为默认操作符

Returns​

void


unregister()​

unregister(key): boolean;

Defined in: packages/rxdb-model/dist/query-builder/services/operator-registry.service.d.ts:63

移除操作符

Parameters​

ParameterTypeDescription
keyOperatorName操作符键值

Returns​

boolean

是否成功移除