Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Learning Dart

You're reading from   Learning Dart Dart is the programming language developed by Google that offers a new level of simple versatility. Learn all the essentials of Dart web development in this brilliant tutorial that takes you from beginner to pro.

Arrow left icon
Product type Paperback
Published in Jan 2014
Publisher
ISBN-13 9781849697422
Length 388 pages
Edition 1st Edition
Languages
Arrow right icon
Toc

Table of Contents (14) Chapters Close

Preface 1. Dart – A Modern Web Programming Language 2. Getting to Work with Dart FREE CHAPTER 3. Structuring Code with Classes and Libraries 4. Modeling Web Applications with Model Concepts and Dartlero 5. Handling the DOM in a New Way 6. Combining HTML5 Forms with Dart 7. Building Games with HTML5 and Dart 8. Developing Business Applications with Polymer Web Components 9. Modeling More Complex Applications with Dartling 10. MVC Web and UI Frameworks in Dart – An Overview 11. Local Data and Client-Server Communication 12. Data-driven Web Applications with MySQL and MongoDB Index

Using IndexedDB with Dart


We will learn how to work with IndexedDB and JSON web services through the indexed_db_spirals project (https://github.com/dzenanr/indexed_db_spirals), which is a todo app like the ones we've built in previous chapters, but that stores its data in IndexedDB. Get a copy of the code with a git clone:https://github.com/dzenanr/indexed_db_spirals.git.

Spiral s00

In this spiral, todo tasks can be entered, and they are stored in IndexedDB; the following is a screenshot:

The Tasks screen of Spiral s00

Our model class is called Task, and lives in model.dart; with toDb and fromDb, it can transform an object to or make an object from a map:

class Task {
  String title;
  bool completed = false;
  DateTime updated = new DateTime.now();
  var key;

  Task(this.title);

  Task.fromDb(this.key, Map value):
    title = value['title'],
    updated = DateTime.parse(value['updated']),
    completed = value['completed'] == 'true' {
  }

  Map toDb() {
    return {
      'title': title...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image