The Sortable component for Angular represents a plugin which allows you to reorder elements in a HTML list or div tags using the mouse.
Refer to Angular Getting Started before you start with this help topic.
The Sortable component for Angular requires the following imports.
Mark a class as an Angular component through the @Component
decorator:
selector
- CSS selector that identifies this component in a template
styles
- inline-defined styles to be applied to this component's viewstyleUrls
- list of URLs to stylesheets to be applied to this component's viewtemplate
- inline-defined template for the view
templateUrl
- URL to an external file containing a template for the view
@Component
decorator properties is available on:
Angular @Component Decorator API
Every jQWidgets Angular component has an [auto-create] attribute which determines whether the component is automatically created or is created on demand by API method call.
By default, the [auto-create] attribute value is true.
Create the AppComponent class.
The AppComponent class is used to instantiate the app. In some of the examples, we use @ViewChild and ngAfterViewInit.
@ViewChild('sortableReference') mySortable: jqxSortableComponent;
mySortable
is available.
The following example demonstrates the Sortable
component for Angular.
Add the imports.
import { Component, ViewChild, AfterViewInit } from '@angular/core';
import { jqxSortableComponent } from 'components/angular_jqxsortable';
@Component decorator:
@Component({
selector: 'my-app',
template: `<jqxSortable #sortableReference></jqxSortable>`
})
Create the AppComponent class.
@ViewChild('sortableReference') mySortable: jqxSortableComponent;
setOptions
method.
ngAfterViewInit(): void
{
this.mySortable.createComponent(this.SortableSettings);
}
The following example demonstrates how to create a Sortable component for Angular by using the createComponent method.
The properties which are defined as attributes can be changed directly:
To get or set a property, which we did not define or call a method, we can do the following:
Import @ViewChild decorator:
Add the Sortable component:
Get access to the Sortable component and its API:
Finally, we can call methods or set/get properties like that:
Every component has a method setOptions
which accepts a JSON object as an argument.
This object contains component settings and you can use it to set a single or multiple properties dynamically.
The change
event is triggered when the DOM position of an item is changed.
The following example demonstrates how to add an event listener.
"on"
before the event name and upperCase it's the first letter.
To invoke methods, you can use the Sortable reference.
( enable() to enable the widget ) - this.mySortable.enable()
.
The following example demonstrates how to invoke methods of the Sortable
component for Angular.
The following example demonstrates how to create a Sortable
component for Angular.
The following example demonstrates how to disable the Sortable
component for Angular.