| Index: src/site/docs/tutorials/indexeddb/index.markdown
|
| diff --git a/src/site/docs/tutorials/indexeddb/index.markdown b/src/site/docs/tutorials/indexeddb/index.markdown
|
| index 26d34bc0957bddc6690de351c9126d7519a3c2a5..1568522764dbd8472ce04b6741a85bf4b1a54b82 100644
|
| --- a/src/site/docs/tutorials/indexeddb/index.markdown
|
| +++ b/src/site/docs/tutorials/indexeddb/index.markdown
|
| @@ -6,7 +6,7 @@ has-permalinks: true
|
| tutorial:
|
| id: indexeddb
|
| next:
|
| -next-title: "A Game of Darts"
|
| +next-title: "Home"
|
| prev: forms/
|
| prev-title: "Get Input from a Form"
|
| ---
|
| @@ -63,12 +63,12 @@ Your apps
|
|
|
| * can have full functionality even if a network connection is not available.
|
| * can cache data and restore state between invocations.
|
| -* won't lose data if the network connected is interrupted.
|
| +* won't lose data if the network connection is interrupted.
|
| * generate less network traffic.
|
| * perform better because data management happens on the local computer
|
| rather than over the Internet.
|
|
|
| -<aside class="alert" markdown="1">
|
| +<aside class="alert alert-info" markdown="1">
|
| <strong>Note:</strong>
|
| Some browsers don't yet support IndexedDB.
|
| Check
|
| @@ -99,6 +99,7 @@ to store data to and retrieve data from the browser's IndexedDB.
|
| * [Clearing all data](#clearing-all-data)
|
| * [Using a cursor to get all the records](#getting-data)
|
| * [Other resources](#other-resources)
|
| +* [What next?](#what-next)
|
|
|
| ##Run the app {#run-the-app}
|
|
|
| @@ -108,9 +109,8 @@ and displays a countdown timer for each one.
|
| **Try it!**
|
| Enter the name, date, and time of a milestone—your
|
| birthday, for example—and click the plus (**+**) button.
|
| -The app shows the milestone name briefly,
|
| -starts a countdown timer,
|
| -and then displays the amount of time remaining until the milestone occurs.
|
| +The app starts a countdown timer
|
| +and displays the amount of time remaining until the milestone occurs.
|
| The app updates the display every second.
|
|
|
| Close this browser window and reload
|
| @@ -158,14 +158,14 @@ The count_down app uses a Model, View, View-model (MVVM) structure.
|
| connects the View and the Model,
|
| using UI and Timer events
|
| to make changes to the Model.
|
| -The MilestoneApp class is primary class
|
| +The MilestoneApp class is the primary class
|
| that implements the View-Model—it
|
| manages the timer,
|
| and implements the app's business logic,
|
| which manages the information exchange between the Model and the View.
|
|
|
| * The **View** provides the user interface for the app.
|
| -Two custom components implement the View in the count_down app:
|
| +Two custom elements implement the View in the count_down app:
|
| CountDownComponent describes the user interface for the app as a whole,
|
| and MilestoneComponent describes the UI for an individual milestone.
|
| These components inform the View-model of UI events.
|
| @@ -193,10 +193,8 @@ The count_down app uses the following libraries:
|
| {: .table }
|
|
|
| This tutorial explains the Dart API for IndexedDB used by the count_down app.
|
| -In addition, this tutorial covers some interesting
|
| -API related to dates, times, and timers.
|
|
|
| -<aside class="alert" markdown="1">
|
| +<aside class="alert alert-info" markdown="1">
|
| <strong>Note:</strong>
|
| This tutorial does not cover Futures or Polymer.
|
| For information about Futures,
|
| @@ -340,7 +338,7 @@ the database is simply opened.
|
| The third parameter, `onUpgradeNeeded`,
|
| provides a callback function that gets called
|
| when an upgrade needed event is fired,
|
| -which happens when a new database
|
| +which happens when a new database is created
|
| or the version of a database is updated.
|
| This gives your app an opportunity to create an object store.
|
| The only place you can create an object store
|
| @@ -355,8 +353,9 @@ The following flow chart describes the logic of the
|
|
|
| Because creating and opening a database can take time,
|
| `window.indexedDB.open()` returns a Future object,
|
| -which runs asynchronously and returns a value sometime in the future.
|
| -The value is returned to a callback function
|
| +which runs asynchronously and returns a value, the database object,
|
| +sometime in the future.
|
| +The database object is returned to a callback function
|
| registered with `then()`.
|
| In this example,
|
| the callback function is called `_loadFromDB()`.
|
| @@ -410,9 +409,9 @@ in this object store.
|
| The code sets `autoIncrement` on the object store to true.
|
| When autoIncrement is true,
|
| the database generates unique, primary keys for you,
|
| -which saves you the trouble of doing so.
|
| +which saves you the trouble of ensuring unique keys.
|
|
|
| -Finally, `_initializeDatabase` creates an index.
|
| +Finally, `_initializeDatabase` creates a name index.
|
|
|
| ##Using a name index
|
|
|
| @@ -456,7 +455,7 @@ All database operations must be performed
|
| within a
|
| <a href="https://api.dartlang.org/dart_indexedDb/Transaction.html" target="_blank">Transaction</a>.
|
|
|
| -<aside class="alert" markdown="1">
|
| +<aside class="alert alert-info" markdown="1">
|
| <strong>Important: About the life-cycle of a transaction</strong>
|
|
|
| The life-cycle of a transaction is as follows:
|
| @@ -710,10 +709,9 @@ The _loadFromDB method returns a Future that returns the length of the stream.
|
|
|
| ###What next?
|
|
|
| -Check out our
|
| -<a href="/codelabs/web-ui-writer/index.html" target="_blank"><i class="icon-beaker"> </i>Codelab</a>;
|
| -it uses LocalStorage instead of IndexedDB to store data in the client.
|
| -Try converting it to use IndexedDB.
|
| +You've completed the tutorials!
|
| +Check out the Dart
|
| +[code samples](/samples/) and [articles](/articles/).
|
|
|
| {% endcapture %}
|
|
|
|
|