Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Meetup Paris TypeScript #9 - Let's talk about I...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Sylvain PONTOREAU
April 27, 2017
Technology
0
140
Meetup Paris TypeScript #9 - Let's talk about Ionic
Présentation et démo de Ionic
Sylvain PONTOREAU
April 27, 2017
Tweet
Share
More Decks by Sylvain PONTOREAU
See All by Sylvain PONTOREAU
aMS Lausanne - Préparez-vous à une virée intersidérale avec Azure Cosmos DB 🧑🚀
spontoreau
0
51
TypeScript - 45 minutes pour s’y mettre !
spontoreau
0
140
Event Sourcing avec Azure, quelle base de données choisir
spontoreau
0
76
Decorators in TypeScript 5.0, everything you need to know!
spontoreau
0
470
Leverage your CI/CD at the next level with Github actions
spontoreau
0
60
Commit comme un(e) "Hipster" avec Gitmoji !
spontoreau
0
160
Bird of a Feather - TypeScript (Devoxx 2022)
spontoreau
0
38
GitHub - Du besoin jusqu'à la production avec Github et Azure
spontoreau
0
39
Behavior Driven Development
spontoreau
1
280
Other Decks in Technology
See All in Technology
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
68k
MCPでつなぐElasticsearchとLLM - 深夜の障害対応を楽にしたい / Bridging Elasticsearch and LLMs with MCP
sashimimochi
0
150
【Oracle Cloud ウェビナー】[Oracle AI Database + AWS] Oracle Database@AWSで広がるクラウドの新たな選択肢とAI時代のデータ戦略
oracle4engineer
PRO
1
130
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
13k
Tebiki Engineering Team Deck
tebiki
0
24k
ファインディの横断SREがTakumi byGMOと取り組む、セキュリティと開発スピードの両立
rvirus0817
1
1.3k
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
210
配列に見る bash と zsh の違い
kazzpapa3
1
130
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
210
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
380
Greatest Disaster Hits in Web Performance
guaca
0
200
GSIが複数キー対応したことで、俺達はいったい何が嬉しいのか?
smt7174
3
150
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
141
7.3k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
750
Designing Powerful Visuals for Engaging Learning
tmiket
0
230
[SF Ruby Conf 2025] Rails X
palkan
1
740
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
56
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
How STYLIGHT went responsive
nonsquared
100
6k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
450
Context Engineering - Making Every Token Count
addyosmani
9
650
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
Navigating Team Friction
lara
192
16k
Transcript
None
None
None
That's great !
It's interesting !
Swift XCode Java A.Studio
None
Which one is hybrid ? This one !
None
None
Today, we won't talk about this one !
Application Mobile OS Web App Plugins HTML Renderer (WebView) HTML
CSS JS Resources + config.xml Camera Storage Geoloc … HTML APIs Cordova APIs Cordova Native APIs OS APIs OS APIs
import { Platform } from 'ionic-angular'; import { BatteryStatus, BatteryStatusResponse
} from '@ionic-native/battery-status'; class MyComponent { constructor(private platform: Platform, private batteryStatus: BatteryStatus) { platform.ready().then(() => { //ready corresponding to the deviceready event from Cordova this.batteryStatus.onChange().subscribe(status: BatteryStatusResponse => { //do something here }); }); } } Plugin callbacks are wrapped in Promises/Observables
• Battery • Calls • Pushes • Camera • Gyroscope
• CoucheBase / SQLite • File • … Specific Cross-platform • 3d Touch (iOS) • Video player (Android) • File chooser (Android) • Touch ID (iOS) • … Third party • AdMob • Twitter • Facebook • Google Map • PayPal • Linkedin • …
None
<ion-toggle [(ngModel)]="cachePolicy"></ion-toggle>
Action Sheet Toast Popover Navigation Modal Loading
import { LoadingController } from 'ionic-angular'; export class MyPage {
constructor(public loadingCtrl: LoadingController) { } login() { let loader = this.loadingCtrl.create({ content: "Please wait...", duration: 3000 }); loader.present(); } }
Bonjour Hello
https://github.com/Vtek/IonicCognitiveTranslator
None
None