<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Sanjay Patel</title>
    <description>The latest articles on DEV Community by Sanjay Patel (@teclogiq).</description>
    <link>https://dev.to/teclogiq</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F190353%2Fca8dd9c6-aa3b-47b9-9d68-b63dea141102.jpg</url>
      <title>DEV Community: Sanjay Patel</title>
      <link>https://dev.to/teclogiq</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/teclogiq"/>
    <language>en</language>
    <item>
      <title>AngularJS vs ReactJS: Comparison between AngularJS and ReactJS</title>
      <dc:creator>Sanjay Patel</dc:creator>
      <pubDate>Fri, 27 Sep 2019 06:05:26 +0000</pubDate>
      <link>https://dev.to/teclogiq/angular-vs-react-comparison-between-angular-and-react-10jo</link>
      <guid>https://dev.to/teclogiq/angular-vs-react-comparison-between-angular-and-react-10jo</guid>
      <description>&lt;p&gt;When you want to create a single page application the question arrives in your mind: What I will use? AngularJS or ReactJS? I've been using AngularJS and ReactJS for a while now. Both frameworks are super fast, advanced, widely adopted JavaScript (JS) technologies that we use to create interactive single-page applications (SPAs).&lt;/p&gt;

&lt;p&gt;Angular, the Model–View–Controller framework has become extremely popular among web developers. React is even more widely used by JavaScript programmers, React is actually a library, not a framework. React only has a View, but lacks Model and Controller components. So how did React became so popular and how can we reasonably compare a framework (AngularJS) with a library (React)?&lt;/p&gt;

&lt;p&gt;We can differentiate Angular and React using following aspects:&lt;br&gt;
• Data Binding &lt;br&gt;
• Dependency Resolution&lt;br&gt;
• Templating &amp;amp; Directives&lt;br&gt;
• Componentization&lt;br&gt;
• Performance&lt;br&gt;
• Language&lt;br&gt;
• Concept&lt;/p&gt;

&lt;h2&gt;
  
  
  Data Biding
&lt;/h2&gt;

&lt;h3&gt;
  
  
  AngularJS
&lt;/h3&gt;

&lt;p&gt;Two-way data binding.&lt;/p&gt;

&lt;h3&gt;
  
  
  ReactJS
&lt;/h3&gt;

&lt;p&gt;One-way data binding.&lt;/p&gt;

&lt;h2&gt;
  
  
  Dependencies
&lt;/h2&gt;

&lt;h3&gt;
  
  
  AngularJS
&lt;/h3&gt;

&lt;p&gt;Manages dependencies automatically.&lt;/p&gt;

&lt;h3&gt;
  
  
  ReactJS
&lt;/h3&gt;

&lt;p&gt;Requires additional tools to manage dependencies.&lt;/p&gt;

&lt;h2&gt;
  
  
  Templating &amp;amp; Directives
&lt;/h2&gt;

&lt;h3&gt;
  
  
  AngularJS
&lt;/h3&gt;

&lt;p&gt;We make our own directives in Angular to insert data into templates.&lt;/p&gt;

&lt;h3&gt;
  
  
  ReactJS
&lt;/h3&gt;

&lt;p&gt;React doesn’t offer division into templates and directives or template logic.&lt;/p&gt;

&lt;h2&gt;
  
  
  Componentization
&lt;/h2&gt;

&lt;h3&gt;
  
  
  AngularJS
&lt;/h3&gt;

&lt;p&gt;Based on the three layers — Model, View, and Controller.&lt;/p&gt;

&lt;h3&gt;
  
  
  ReactJS
&lt;/h3&gt;

&lt;p&gt;Only has a View, but lacks Model and Controller components.&lt;/p&gt;

&lt;h2&gt;
  
  
  Performance
&lt;/h2&gt;

&lt;h3&gt;
  
  
  AngularJS
&lt;/h3&gt;

&lt;p&gt;The performance will decrease a lot if your application has too many watchers.&lt;/p&gt;

&lt;h3&gt;
  
  
  ReactJS
&lt;/h3&gt;

&lt;p&gt;React makes it simpler to control application performance but this doesn't mean we can't create a fast application in Angular.&lt;/p&gt;

&lt;h2&gt;
  
  
  Language
&lt;/h2&gt;

&lt;h3&gt;
  
  
  AngularJS
&lt;/h3&gt;

&lt;p&gt;JavaScript + HTML&lt;/p&gt;

&lt;h3&gt;
  
  
  ReactJS
&lt;/h3&gt;

&lt;p&gt;JavaScript + JSX&lt;/p&gt;

&lt;h2&gt;
  
  
  Concept
&lt;/h2&gt;

&lt;h3&gt;
  
  
  AngularJS
&lt;/h3&gt;

&lt;p&gt;Brings JavaScript into HTML Works with the real DOM Client-side rendering.&lt;/p&gt;

&lt;h3&gt;
  
  
  ReactJS
&lt;/h3&gt;

&lt;p&gt;Brings HTML into JavaScript Works with the virtual DOM Server-side rendering.&lt;/p&gt;

</description>
      <category>angularvsreact</category>
      <category>angularorreact</category>
      <category>angular</category>
      <category>react</category>
    </item>
    <item>
      <title>What is AngularJS Good For?</title>
      <dc:creator>Sanjay Patel</dc:creator>
      <pubDate>Wed, 28 Aug 2019 10:53:34 +0000</pubDate>
      <link>https://dev.to/teclogiq/what-is-angularjs-good-for-52im</link>
      <guid>https://dev.to/teclogiq/what-is-angularjs-good-for-52im</guid>
      <description>&lt;h2&gt;What is AngularJS?&lt;/h2&gt;

&lt;p&gt;AngularJS is an Open-source Front-end JavaScript-based framework which is maintained by Google and by a community of individuals and corporations. AngularJS widely used to create Single-Page Applications, a web application or we can say a website that interacts with the user by dynamically rewriting the current page rather than loading the entire website from a server. This is possible by using the Model–View–Controller. It makes use of Model–View–Controller and reduce the amount of JavaScript needed to reduce the loading time and make web applications functional. The power of angular comes from its two-way data binding technique which allows complete separation of the data model and view for user interaction.&lt;/p&gt;

&lt;h2&gt;What is AngularJS Good for?&lt;/h2&gt;

&lt;p&gt;The nature of the website or application you want to build is the only factor that will play an important role in deciding whether you will use angular or not. Like if the website or application is data-rich and requires instant feedback on interaction, it's maybe a good idea to use angular.&lt;/p&gt;

&lt;p&gt;Developers find AngularJS very effective especially in creating dynamic, single-page apps, and supporting MVC (Model View Controller) programming structure.&lt;/p&gt;

&lt;p&gt;When you are thinking of creating a user-friendly and interactive web application with cross-browser capability AngularJS is a best-suited framework to build such apps.&lt;/p&gt;

&lt;h2&gt;Notable Features of AngularJS:&lt;/h2&gt;

&lt;h3&gt;Two-way Data-binding:&lt;/h3&gt;

&lt;p&gt;Data binding is one of the most notable AngularJS features which help developers to save time because it doesn't require a lot of coding for an application. This helps to reduce overall work for the developer.&lt;/p&gt;

&lt;h3&gt;Ready to Use Templates:&lt;/h3&gt; 

&lt;p&gt;The ready to use templates make it easy even for people with little computing skills come-up with great apps.&lt;/p&gt;

&lt;h3&gt;Dependency Injection:&lt;/h3&gt;

&lt;p&gt;This is an essential feature in AngularJS that helps the developer to develop the application easily and smoothly.&lt;/p&gt;

&lt;h3&gt;Testing:&lt;/h3&gt;  

&lt;p&gt;The development team of AngularJS has a special focus on testability while creating framework that leads you to easily test your AngularJS apps.&lt;/p&gt;

&lt;h3&gt;Enhanced User Experience:&lt;/h3&gt;

&lt;p&gt;The use of MVC and REST has made it easy for users to use the application with ease by providing a user-friendly environment.&lt;/p&gt;

</description>
      <category>angular</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Dynamic imports for lazy routes from old towards new: Angular 8</title>
      <dc:creator>Sanjay Patel</dc:creator>
      <pubDate>Fri, 19 Jul 2019 05:31:16 +0000</pubDate>
      <link>https://dev.to/teclogiq/dynamic-imports-for-lazy-routes-from-old-towards-new-angular-8-dc1</link>
      <guid>https://dev.to/teclogiq/dynamic-imports-for-lazy-routes-from-old-towards-new-angular-8-dc1</guid>
      <description>&lt;p&gt;&lt;strong&gt;Lazy-loaded routes&lt;/strong&gt; now use the standard &lt;strong&gt;dynamic import&lt;/strong&gt; syntax instead of a custom string. This means that TypeScript and linters will be better able to complain when modules are missing or misspelled.&lt;/p&gt;

&lt;p&gt;So a lazy-loaded import that looked like this:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;{ path: '/cart', loadChildren: './cart/cart.module#CartModule' }&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Will now look like this:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;{ path:&lt;/code&gt;/cart&lt;code&gt;, loadChildren: () =&amp;gt; import(&lt;/code&gt;./cart/cart.module&lt;code&gt;).then(m =&amp;gt; m.CartModule) }&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;The change in syntax will be taken care of for you if you’re using the &lt;strong&gt;ng upgrade&lt;/strong&gt; command to upgrade your app.&lt;/p&gt;

&lt;p&gt;Know more about updates on Angular 8 &lt;a href="https://medium.com/@teclogiqs/angular-8-insights-of-the-latest-version-of-angular-11b1f0b19029"&gt;here&lt;/a&gt;&lt;/p&gt;

</description>
      <category>angular</category>
    </item>
    <item>
      <title>ToDo Mobile App using NativeScript and Angular</title>
      <dc:creator>Sanjay Patel</dc:creator>
      <pubDate>Sat, 13 Jul 2019 09:05:11 +0000</pubDate>
      <link>https://dev.to/teclogiq/todo-mobile-app-using-nativescript-and-angular-2o67</link>
      <guid>https://dev.to/teclogiq/todo-mobile-app-using-nativescript-and-angular-2o67</guid>
      <description>&lt;p&gt;NativeScript is an open source cross-platform and hybrid mobile framework for building native iOS and Android mobile apps with Angular, Vue.js, TypeScript, or JavaScript. &lt;/p&gt;

&lt;p&gt;The goal of this post is to build and run a simple NativeScript Angular application in TypeScript, using the Angular CLI. &lt;/p&gt;

&lt;p&gt;You can download the source code for the NativeScript Angular Todo mobile app from GitHub repository &lt;a href="https://github.com/sanjay-patel/nativescript-todo-app"&gt;nativescript-todo-app&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. GETTING STARTED WITH NATIVESCRIPT&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You need to set up your development environment before you can do anything.&lt;/p&gt;

&lt;p&gt;Install &lt;a href="https://nodejs.org/en/download/"&gt;Node.js® and npm&lt;/a&gt; if they are not already on your machine.&lt;/p&gt;

&lt;p&gt;If you don’t have NativeScript installed you can install it by installing Node.js.&lt;/p&gt;

&lt;p&gt;To install NativeScript, run:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;$ npm install -g nativescript&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;The final step is to install the development tool for each platform that you want to deploy to. For Android, this is the Android SDK. For iOS, it’s XCode. You can follow the &lt;a href="http://docs.nativescript.org/angular/start/quick-setup"&gt;installation guide&lt;/a&gt; on the NativeScript website for more detailed instructions on how to set up the necessary software for your development environment.&lt;/p&gt;

&lt;p&gt;Once you’ve set up your environment, execute:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;$ tns doctor&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. CREATE A NEW APP FOR ANDROID AND IOS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Before we can start coding we need to create a new project. This can be done by executing the following from the Command Prompt (Windows) or Terminal (Linux and Mac):&lt;/p&gt;

&lt;p&gt;&lt;code&gt;$ tns create TodoApp $ cd TodoApp&lt;/code&gt;&lt;br&gt;
&lt;code&gt;$ tns platform add android $ tns platform add ios&lt;/code&gt; (If you're not using a Mac, you cannot add and build for the iOS platform.)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. INSTALL THE NECESSARY NATIVE PLUGINS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://docs.telerik.com/devtools/nativescript-ui/Controls/Angular/SideDrawer/overview"&gt;RadSideDrawer&lt;/a&gt; is a component can show a hidden view that contains navigation UI or common settings. A popular application that uses the drawer UI is the Android Play store app.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://docs.telerik.com/devtools/nativescript-ui/Controls/Angular/ListView/overview"&gt;RadListView&lt;/a&gt; for NativeScript is a virtualizing list component that provides the most popular features associated with scenarios where a list of items is used. All these features are embedded in one control with the idea to save developer time and provide a better experience. The control’s main features include:&lt;/p&gt;

&lt;p&gt;*item animations&lt;br&gt;
*different layouts and orientations&lt;br&gt;
*swipe, reorder, drag, refreshing the list on swipe or loading more items only when needed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://docs.nativescript.org/ui/professional-ui-components/DataForm/dataform-overview"&gt;RadDataForm&lt;/a&gt; plugin provides an easy and versatile approach for building mobile forms based on a provided data object’s public members. Use DataForm to:&lt;/p&gt;

&lt;p&gt;*Bind a form to a data object with a single line of code&lt;br&gt;
*Take advantage of more than 15 built-in editors (or provide your own custom editor)&lt;br&gt;
*Create groups of editors, allow them to be collapsed and style them&lt;br&gt;
*Display a form in ReadOnly mode&lt;br&gt;
*Take control over collected data with built-in data validation – use a provided validator or create a custom one&lt;/p&gt;

&lt;p&gt;The application we are creating will be making use of persisted storage, that will save our data even after our application has been closed. After all, we don’t want to lose our todo list data after we restart our application.&lt;/p&gt;

&lt;p&gt;In this application, we are use the &lt;a href="https://www.npmjs.com/package/nativescript-sqlite"&gt;NativeScript SQLite&lt;/a&gt;. This can be done by executing the following from the Command Prompt (Windows) or Terminal (Linux and Mac):&lt;/p&gt;

&lt;p&gt;&lt;code&gt;$ tns plugin add nativescript-ui-sidedrawer $ tns plugin add nativescript-ui-listview $ tns plugin add nativescript-ui-dataform $ tns plugin add nativescript-sqlite&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. CONFIGURING THE ANGULAR ROUTER&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;src/app/app-routing.module.ts&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;import { NgModule } from '@angular/core';&lt;br&gt;
import { Routes } from '@angular/router';&lt;br&gt;
import { NativeScriptRouterModule } from 'nativescript-angular/router';&lt;/p&gt;

&lt;p&gt;const routes: Routes = [&lt;br&gt;
  {&lt;br&gt;
    path: '',&lt;br&gt;
    redirectTo: 'todo-list',&lt;br&gt;
    pathMatch: 'full'&lt;br&gt;
  },&lt;br&gt;&lt;br&gt;
  {&lt;br&gt;
    path: 'todo-list',&lt;br&gt;
    loadChildren: './todo-list/todo-list.module#TodoListModule'&lt;br&gt;
  },&lt;br&gt;&lt;br&gt;
  {&lt;br&gt;
    path: 'todo-detail',&lt;br&gt;
    loadChildren: './todo-detail/todo-detail.module#TodoDetailModule'&lt;br&gt;
  }&lt;br&gt;
];&lt;/p&gt;

&lt;p&gt;@NgModule({&lt;br&gt;
  imports: [NativeScriptRouterModule.forRoot(routes)],&lt;br&gt;
  exports: [NativeScriptRouterModule],&lt;br&gt;
})&lt;br&gt;
export class AppRoutingModule { }`&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. CREATE TODOLISTMODULE FEATURE MODULE&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;src/app/todo-list/todo-list.module.ts&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;import { NgModule, NO_ERRORS_SCHEMA} from '@angular/core';&lt;br&gt;
import { NativeScriptCommonModule } from 'nativescript-angular/common';&lt;br&gt;
import { NativeScriptUIListViewModule } from 'nativescript-ui-listview/angular';&lt;br&gt;
import { TodoListRoutingModule } from './todo-list-routing.module';&lt;br&gt;
import { TodoListComponent } from './todo-list.component';&lt;br&gt;
import { TodoService } from '../services/todo.service';&lt;/p&gt;

&lt;p&gt;@NgModule({&lt;br&gt;
  imports: [&lt;br&gt;
    NativeScriptCommonModule, &lt;br&gt;
    TodoListRoutingModule],&lt;br&gt;
    NativeScriptUIListViewModule&lt;br&gt;
  ],&lt;br&gt;
  declarations: [TodoListComponent],&lt;br&gt;
  schemas: [NO_ERRORS_SCHEMA],&lt;br&gt;
  providers: [TodoService]&lt;br&gt;
})&lt;br&gt;
export class TodoListModule { }&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6. CONFIGURE THE FEATURE MODULE’S ROUTES&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;src/app/todo-list/todo-list-routing.module.ts&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;import { NgModule } from '@angular/core';&lt;br&gt;
import { Routes } from '@angular/router';&lt;br&gt;
import { NativeScriptRouterModule } from 'nativescript-angular/router';&lt;br&gt;
import { TodoListComponent } from './todo-list.component';&lt;/p&gt;

&lt;p&gt;const routes: Routes = [&lt;br&gt;
  {&lt;br&gt;
    path: '',&lt;br&gt;
    component: 'TodoListComponent'&lt;br&gt;
  }&lt;br&gt;
];&lt;/p&gt;

&lt;p&gt;@NgModule({&lt;br&gt;
  imports: [NativeScriptRouterModule.forRoot(routes)],&lt;br&gt;
  exports: [NativeScriptRouterModule]&lt;br&gt;&lt;br&gt;
})&lt;br&gt;
export class TodoListRoutingModule { }&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;7. CREATING THE TODOLIST COMPONENT&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;src/app/todo-list/todo-list.component.ts&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;import { Component, OnInit, ViewChild } from '@angular/core';&lt;br&gt;
import { RouterExtensions } from 'nativescript-angular/router';&lt;br&gt;
import { ObservableArray } from 'tns-core-modules/data/observable-array';&lt;br&gt;
import { DataItem } from './dataItem';&lt;br&gt;
import * as app from 'application';&lt;br&gt;
import { RadSideDrawer } from 'nativescript-ui-sidedrawer';&lt;br&gt;
import { TodoService } from '../services/todo.service';&lt;br&gt;
import { ListViewEventData, RadListView } from 'nativescript-ui-listview';&lt;br&gt;
import { RadListViewComponent } from 'nativescript-ui-listview/angular';&lt;br&gt;
import { View } from 'tns-core-modules/ui/core/view';&lt;br&gt;
import * as dialogs from 'ui/dialogs';&lt;/p&gt;

&lt;p&gt;@Component({&lt;br&gt;
  selector: 'todo-list',&lt;br&gt;
  moduleId: module.id,&lt;br&gt;
  templateUrl: './todo-list.component.html',&lt;br&gt;
  styleUrls: ['todo-list.component.css']&lt;br&gt;
})&lt;/p&gt;

&lt;p&gt;export class TodoListComponent implements OnInit {&lt;br&gt;
  private _dataItems: ObservableArray;&lt;br&gt;
  public data: DataItem[] = [];&lt;br&gt;
  @ViewChild('myListView') listViewComponent: RadListViewComponent;&lt;/p&gt;

&lt;p&gt;constructor( private _routerExtensions: RouterExtensions , private todoService: TodoService ) { }&lt;/p&gt;

&lt;p&gt;get dataItems(): ObservableArray {&lt;br&gt;
    return this._dataItems;&lt;br&gt;
  }&lt;/p&gt;

&lt;p&gt;ngOnInit(): void {&lt;br&gt;
    this.loadTodoList();&lt;br&gt;
  }&lt;/p&gt;

&lt;p&gt;loadTodoList() {&lt;br&gt;
    this.todoService.fetch().then((res) =&amp;gt; {&lt;br&gt;
     this._dataItems = new ObservableArray(res);&lt;br&gt;
    });&lt;br&gt;
  }&lt;/p&gt;

&lt;p&gt;onDrawerButtonTap(): void {&lt;br&gt;
    const sideDrawer = app.getRootView();&lt;br&gt;
    sideDrawer.showDrawer();&lt;br&gt;
  }&lt;/p&gt;

&lt;p&gt;create(): void {&lt;br&gt;
    this._routerExtensions.navigate(['/todo-detail'],&lt;br&gt;
    {&lt;br&gt;
      animated: true,&lt;br&gt;
      transition: {&lt;br&gt;
        name:'slide',&lt;br&gt;
        duration: 200,&lt;br&gt;
        curve:'ease'&lt;br&gt;
      }&lt;br&gt;
    });&lt;br&gt;
  }&lt;/p&gt;

&lt;p&gt;public onCellSwiping(args :ListViewEventData) {&lt;br&gt;
    var swipeLimits = args.data.swipeLimits;&lt;br&gt;
    var currentItemView = args.object;&lt;br&gt;
    var currentView;&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;if (args.data.x &amp;gt; 200) {
  console.log('Notify perform left action');
} else if (args.data.x &amp;lt; -200) {
  console.log('Notify perform right action');
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;}&lt;/p&gt;

&lt;p&gt;public onSwipeCellStarted(args :ListViewEventData) {&lt;br&gt;
    var swipeLimits = args.data.swipeLimits;&lt;br&gt;
    var swipeView = args['object'];&lt;br&gt;
    var leftItem = swipeView.getViewById('edit-view');&lt;br&gt;
    var rightItem = swipeView.getViewById('delete-view');&lt;br&gt;
    swipeLimits.left = leftItem.getMeasuredWidth();&lt;br&gt;
    swipeLimits.right = rightItem.getMeasuredWidth();&lt;br&gt;
    swipeLimits.threshold = leftItem.getMeasuredWidth() / 2;&lt;br&gt;
  }&lt;/p&gt;

&lt;p&gt;public onLeftSwipeClick(args :ListViewEventData) {&lt;br&gt;&lt;br&gt;
    var id = args.object.bindingContext.id;&lt;br&gt;
    this.listViewComponent.listView.notifySwipeToExecuteFinished();&lt;br&gt;&lt;br&gt;
    this._routerExtensions.navigate(['/todo-detail'],&lt;br&gt;
    {&lt;br&gt;
      queryParams:{id: id },&lt;br&gt;
      animated: true,&lt;br&gt;
      transition: {&lt;br&gt;
        name:'slide',&lt;br&gt;
        duration: 200,&lt;br&gt;
        curve:'ease'&lt;br&gt;
      }&lt;br&gt;
    });&lt;br&gt;
  }&lt;/p&gt;

&lt;p&gt;public onRightSwipeClick(args) {&lt;br&gt;
    var id = args.object.bindingContext.id;&lt;br&gt;
    dialogs.confirm({&lt;br&gt;
      title: 'Confirm Delete',&lt;br&gt;
      message: 'Are you sure you want to delete this item?',&lt;br&gt;
      okButtonText: 'Ok',&lt;br&gt;
      cancelButtonText: 'Cancel'&lt;br&gt;
    }).then(result =&amp;gt; {&lt;br&gt;
      if (result) {&lt;br&gt;
        this.todoService.deleteRecord(id).then((res) =&amp;gt; {&lt;br&gt;
          if (res.success) {&lt;br&gt;
            this._dataItems.splice(this._dataItems.indexOf(args.object.bindingContext), 1);&lt;br&gt;
          }&lt;br&gt;
        });&lt;br&gt;
      }&lt;br&gt;
    });&lt;br&gt;&lt;br&gt;
  }&lt;br&gt;
}  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;8. RUNNING AND DEBUGGING THE APP&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You can run the app on your device by executing:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;$ tns run&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;and then the platform where you want to deploy. Here’s an example for android:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;$ tns run android&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This automatically installs the Android platform for you if it hasn’t already been installed and then runs the app on your &lt;a href="https://developer.android.com/studio/install"&gt;android device&lt;/a&gt; once it’s installed.&lt;/p&gt;

&lt;p&gt;Once the app is running, you can execute tns livesync android –watch to automatically refresh the app every time you make changes to the source files.&lt;/p&gt;

&lt;p&gt;NativeScript allows developers to debug their app. This is done with the Chrome dev tools. There are two ways of doing this:&lt;/p&gt;

&lt;p&gt;If have an app already running, you can open a new terminal window and execute&lt;br&gt;
&lt;code&gt;$ tns debug android --start&lt;/code&gt;&lt;br&gt;
If you don’t have an app running yet, use&lt;br&gt;
&lt;code&gt;$ tns debug android --debug-brk&lt;/code&gt;&lt;/p&gt;

</description>
      <category>nativescriptangular</category>
      <category>mobileapp</category>
    </item>
  </channel>
</rss>
