การใช้งาน Storage แบบ Promise

สร้างโปรเจ็กส์ใหม่ชื่อ localStorage

[code]
> ionic start storage blank
> cd storage
> ionic serve
[/code]

ติดตั้ง plugin

[code]
> ionic cordova plugin add cordova-sqlite-storage

> npm install –save @ionic/storage
[/code]

src/app/app.module.ts

src/pages/home/home.ts

การใช้งาน Storage ครั้งแรกจะมีปัญหา เราต้องแก้ไขดังตัวอย่างนี้

บรรทัดที่ 4-6: เป็นการลบข้อมูลทั้งหมดที่มีใน Storage (ฐานข้อมูล)
บรรทัดที่ 8: เรียกใช้เมธอด getSomething()
บรรทัดที่ 11: (ต้อง)ประกาศเมธอด getSomething() เป็นแบบ async
บรรทัดที่ 13-26: ทำงานเรียงลำดับจากบรรทัดที่ 13 ถึงบรรทัดที่ 26 โดยที่คำสั่งในบรรทัดที่ 13 และ 14 เป็นแบบ async ก็จริง แต่บรรทัดที่ 13 จะต้องทำงานเสร็จก่อน ถึงจะทำงานบรรทัด่ที่ 14
บรรทัดที่ 13-14: อ่านข้อมูลจาก Storage
บรรทัดที่ 16,20: ตรวจสอบว่าเป็นการอ่านข้อมูลจาก Storage เป็นครั้งแรกมั๊ย ถ้าใช่จะได้ค่า "undefined" ถ้าใช้ก็กำหนดค่าเริ่มต้น (init) แต่ถ้าไม่ใช่ โค๊ดส่วนนี้เอาไว้ป้องกัน Error จากการเรียกใช้ Storage ครั้งแรก

Link