No active maintinance please go to https://www.npmjs.com/package/@ticnat/nativescript-searchable-select
A NativeScript plugin to provide an listview widget to select AND filter items.
| Sample 1 | Sample 2 |
|---|---|
![]() |
![]() |
tns plugin add nativescript-filter-select
@import 'nativescript-filter-select/styles.css';
*Be sure to run a new build after adding plugins to avoid any issues
IMPORTANT: Make sure you include xmlns:FS="nativescript-filter-select" on the Page element
<Page xmlns:FS="nativescript-filter-select">
<StackLayout>
<FS:FilterSelect
items="{{ countries }}"
hint="Please select some countries"
modal_title="Countries" search_param="name"
primary_key="code"
change="{{ onSelect }}"
/>
</StackLayout>
</Page>import { registerElement } from 'nativescript-angular/element-registry';
import { FilterSelect } from 'nativescript-filter-select';
registerElement('FilterSelect', () => FilterSelect); <FilterSelect
height="100%"
[items]="items"
(change)="onitemselected($event)"
hint="Please select some items"
modal_title="item" search_param="name"
primary_key="id">
</FilterSelect>see demo examples for more information
| Attribute | Description | Default |
|---|---|---|
| render | to render "tags" or "label" or "drop" | string : tags |
| multiple | to limit the options selected to one if set to false | boolean : true |
| search_param | index of the string value in the items object to search on it | string : name |
| item_template | xml template for the listview items | string : <Label col="0" text="{{ ${this._search_param} }}" textWrap="true" /> |
| change | change event treger when select is done | function : optional change(args) and selected item can be accessed as args.selected |
| modal_title | title of the filter modal | String : Please select items |
| hint | string to show when no items selected | Please select some items |
| items | array of objects to populate the list of options | ObservableArray :[] |
| primary_key | unique index of the items object | string : id |
| selected | array of objects to mark some options as selected and it will be the result when select is done | Array: [] |
| disabled | to disable select botton | boolean : false |
| allowSearch | to enable/disable search bar in the modal | boolean : true |
| refresh | to refresh the filter select with new values good with remote data | function |
| searchHint | search placeholder or hint in the items modal | "Search for item" |
| xbtn | remove tag text you can use tag icon here | "x" |
| closeText | close button text | "Close" |
| doneText | done button text | "Done" |
| clearText | clear button text | "Clear" |
| selectText | select button text | "Select" |
| autofocus | keyboard up when you open modal so you can start search | false |
| open() | open modal programmatically | function |
| close | close event treger when modal is closed | you can get the selected array by args.selected if the modal closed without any selection the array will be empty |
see styles.css so you can override or make your own
- and don't forget to share with us your nice styles :D
-
font icons are required if you are using dropdown render
and you can add fontawsome icon as a select triger ( hint="{{'fa-list-ul' | fonticon}}" )
see demo
just do a pull request with description of your changes or open issue with your ideas

