The Custom Collection component for Retool Mobile
A repeatable set of components with values that map to a list of data.
Settings
Custom Collection includes the following configurable options when building apps in the IDE.
ElevationDataEvent handlersGapShow on desktopShow on mobileMaintain space when hiddenMarginPrimary keyEnable server side paginationPagination typeAlways show in edit modeShow separatorStyles |
Properties
All properties for Custom Collection with supported data types or values. You can write JavaScript almost anywhere in Retool to manipulate or read property values.
afterCursor
The cursor to reference in a request for the next set of data.
Values
flat | No border or shadow. |
elevated | Include a border and shadow. |
Properties
event
The event type.
Values
change | A user changes the value. |
click | A user clicks or taps the component. |
submit | A user submits the value. |
focus | A user selects the input field. |
blur | A user deselects the input field. |
scan | A user scans a barcode. |
open | A user opens the component. |
close | A user closes the component. |
true | A user sets the value to |
false | A user sets the value to |
select | A user selects a value. |
clear | A user clears the value. |
upload | A user uploads a file. |
parse | An uploaded file is parsed. |
inputValueChange | A user changes the value of the input field. |
method
The JavaScript method to perform when type
is datasource
, widget
, state
, or localStorage
.
Values
datasource | Control query. |
widget | Control component. |
script | Run script. |
state | Set variable. |
localStorage | Set localStorage. |
util | Perform utility action (e.g., Open URL or Confetti). |
global
Whether the object is globally scoped for use in all app pages.
id
The unique identifier.
instances
The number of instances.
isHiddenOnDesktop
Whether the component is visible in the desktop layout.
isHiddenOnMobile
Whether the component is visible in the mobile layout.
maintainSpaceWhenHidden
Whether the component takes up space on the canvas if hidden
is true
.
numRows
The number of rows displayed.
offset
The offset.
padding
The amount of padding to render inside.
pageSize
The number of rows per page.
pagination
The pagination state.
Properties
afterCursor
The cursor to reference in a request for the next set of data.
beforeCursor
The cursor to reference in a request for the previous set of data.
currentPage
The selected page.
offset
The page offset.
pageSize
The number of rows per page.
selectedPageIndex
The selected page, by index.
serverPaginated
Whether to use server-side pagination.
The type of server-side pagination in use.
Values
limitOffsetBased | Limit offset based. |
cursorBased | GraphQL Relay cursor based. |
pluginType
The plugin type.
primaryKey
The primary key with which to identify records.
selectedIndex
The selected value, by index.
selectedItem
The selected item.
selectedPageIndex
The selected page, by index.
serverPaginated
Whether to use server-side pagination.
The type of server-side pagination in use.
Values
limitOffsetBased | Limit offset based. |
cursorBased | GraphQL Relay cursor based. |
showInEditor
Whether to remain visible in the editor if hidden
is true
.
showSeparator
Whether the show a separating line betweeen items.
Methods
JavaScript API methods for interacting with Custom Collection. You can write JavaScript almost anywhere in Retool and use methods to manipulate data and property values.
setHidden
Set the hidden
value to toggle whether the component is visible. Defaults to true
without a parameter.
customCollection.setHidden(hidden)
Parameters
setSelectedPageIndex
Set the selected page index.
customCollection.setSelectedPageIndex(index)
Parameters
index
The index of an item.
Events
Events are triggered by user interactions, such as clicking a button or entering a value. Use event handlers to trigger queries or other actions in response to events.
press
The item is clicked or pressed.