Free and Open source Web Builder Framework. Next generation tool for building templates without coding
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

3.2 KiB

DataRecord

The DataRecord class represents a single record within a data source. It extends the base Model class and provides additional methods and properties specific to data records. Each DataRecord is associated with a DataSource and can trigger events when its properties change.

DataRecord API

Example of Usage

const record = new DataRecord({ id: 'record1', name: 'value1' }, { collection: dataRecords });
const path = record.getPath(); // e.g., 'SOURCE_ID.record1'
record.set('name', 'newValue');

Parameters

  • props DataRecordProps Properties to initialize the data record.
  • opts Object Options for initializing the data record.

getPath

Get the path of the record. The path is a string that represents the location of the record within the data source. Optionally, include a property name to create a more specific path.

Parameters

  • prop String? Optional property name to include in the path.

  • opts Object? Options for path generation.

    • opts.useIndex Boolean? Whether to use the index of the record in the path.

Examples

const pathRecord = record.getPath();
// e.g., 'SOURCE_ID.record1'
const pathRecord2 = record.getPath('myProp');
// e.g., 'SOURCE_ID.record1.myProp'

Returns String The path of the record.

getPaths

Get both ID-based and index-based paths of the record. Returns an array containing the paths using both ID and index.

Parameters

  • prop String? Optional property name to include in the paths.

Examples

const paths = record.getPaths();
// e.g., ['SOURCE_ID.record1', 'SOURCE_ID.0']

Returns Array<String> An array of paths.

triggerChange

Trigger a change event for the record. Optionally, include a property name to trigger a change event for a specific property.

Parameters

  • prop String? Optional property name to trigger a change event for a specific property.

set

Set a property on the record, optionally using transformers. If transformers are defined for the record, they will be applied to the value before setting it.

Parameters

  • attributeName (String | Object) The name of the attribute to set, or an object of key-value pairs.

  • value any? The value to set for the attribute.

  • options Object? Options to apply when setting the attribute.

    • options.avoidTransformers Boolean? If true, transformers will not be applied.

Examples

record.set('name', 'newValue');
// Sets 'name' property to 'newValue'

Returns DataRecord The instance of the DataRecord.