senchacon: sencha touch custom components
DESCRIPTION
SenchaCon preso, Sencha Touch Custom Components with Jay Garcia, CTO & Co-Founder, Modus Create.TRANSCRIPT
![Page 1: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/1.jpg)
Jay Garcia, CTO & Co-Founder, Modus Create
Sencha Touch Custom Components
Monday, July 22, 13
![Page 2: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/2.jpg)
Agenda• Discuss the creation of custom Touch components• Explore some of the tricks of the trade• Look at some code that enables custom UI
Monday, July 22, 13
![Page 3: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/3.jpg)
About Me• CTO & Co-Founder Modus Create• Started with Touch in 2009• Author of
- Ext JS in Action (3.0 & 4.0)- Sencha Touch in Action
• Sencha Community supporter since 2006
Monday, July 22, 13
![Page 4: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/4.jpg)
Compositevs
Custom
Monday, July 22, 13
![Page 5: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/5.jpg)
Why create custom Touch components?
Monday, July 22, 13
![Page 6: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/6.jpg)
Custom Functionality!• Requires us to put our thinking caps on- Write our own DOM renderers
- Custom styles created- DOM listeners must be applied- Interactions must be hand-coded- House cleaning is up to you!
Monday, July 22, 13
![Page 7: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/7.jpg)
Swipe a list item to reveal actions underneath
Monday, July 22, 13
![Page 8: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/8.jpg)
Custom carousel with dynamic image loader
Monday, July 22, 13
![Page 9: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/9.jpg)
Custom audio FFT data renderer
Monday, July 22, 13
![Page 10: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/10.jpg)
What do I need to know to create custom
components?
Monday, July 22, 13
![Page 11: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/11.jpg)
What you need to know• HTML5 semantics• CSS3• SASS, Compass• Touch component lifecycle basics• Touch Class System
- Config system- Extending- Overriding- Build process
Monday, July 22, 13
![Page 12: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/12.jpg)
Choosing which component to extend
Monday, July 22, 13
![Page 13: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/13.jpg)
Extend Ext.Component
Monday, July 22, 13
![Page 14: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/14.jpg)
Custom carousel with dynamic image loader
Monday, July 22, 13
![Page 15: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/15.jpg)
Two extensions required for this one!
Monday, July 22, 13
![Page 16: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/16.jpg)
The anatomy of a custom component
Monday, July 22, 13
![Page 17: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/17.jpg)
Let’s destruct this one component
Monday, July 22, 13
![Page 18: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/18.jpg)
Anatomy of a custom component
Monday, July 22, 13
![Page 19: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/19.jpg)
Anatomy of a custom component
Class Name
Monday, July 22, 13
![Page 20: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/20.jpg)
Anatomy of a custom component
Monday, July 22, 13
![Page 21: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/21.jpg)
Anatomy of a custom component
Superclass
Monday, July 22, 13
![Page 22: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/22.jpg)
Anatomy of a custom component
Monday, July 22, 13
![Page 23: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/23.jpg)
Anatomy of a custom component
XType
Monday, July 22, 13
![Page 24: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/24.jpg)
Anatomy of a custom component
Monday, July 22, 13
![Page 25: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/25.jpg)
Anatomy of a custom component
Classes to require
Monday, July 22, 13
![Page 26: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/26.jpg)
Anatomy of a custom component
Monday, July 22, 13
![Page 27: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/27.jpg)
Anatomy of a custom component
Config block
Monday, July 22, 13
![Page 28: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/28.jpg)
Anatomy of a custom component
Monday, July 22, 13
![Page 29: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/29.jpg)
Anatomy of a custom component
Applier function
Monday, July 22, 13
![Page 30: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/30.jpg)
Anatomy of a custom component
Monday, July 22, 13
![Page 31: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/31.jpg)
Anatomy of a custom component
Initialize function
Monday, July 22, 13
![Page 32: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/32.jpg)
Anatomy of a custom component
Monday, July 22, 13
![Page 33: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/33.jpg)
Anatomy of a custom component
Event handlers
Monday, July 22, 13
![Page 34: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/34.jpg)
Anatomy of a custom component
Monday, July 22, 13
![Page 35: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/35.jpg)
Anatomy of a custom component
Utility methods
Monday, July 22, 13
![Page 36: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/36.jpg)
Anatomy of a custom component
Monday, July 22, 13
![Page 37: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/37.jpg)
Constructing a custom Component
Monday, July 22, 13
![Page 38: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/38.jpg)
Custom DOM
Monday, July 22, 13
![Page 39: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/39.jpg)
Custom DOM
JiT instance of XTemplate
Monday, July 22, 13
![Page 40: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/40.jpg)
Custom DOM
Monday, July 22, 13
![Page 41: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/41.jpg)
Custom DOMLight DOM
Monday, July 22, 13
![Page 42: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/42.jpg)
Custom DOM
Monday, July 22, 13
![Page 43: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/43.jpg)
Register event listeners
Monday, July 22, 13
![Page 44: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/44.jpg)
Register event listeners
Register drag events
Monday, July 22, 13
![Page 45: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/45.jpg)
Register event listeners
Monday, July 22, 13
![Page 46: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/46.jpg)
Custom animations
Monday, July 22, 13
![Page 47: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/47.jpg)
Custom animations
Animate elements
Monday, July 22, 13
![Page 48: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/48.jpg)
Custom animations
Monday, July 22, 13
![Page 49: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/49.jpg)
Cleanup
Monday, July 22, 13
![Page 50: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/50.jpg)
CleanupCreate post-
transition event handler
Monday, July 22, 13
![Page 51: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/51.jpg)
Cleanup
Monday, July 22, 13
![Page 52: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/52.jpg)
Cleanup
Register event handler
Monday, July 22, 13
![Page 53: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/53.jpg)
Cleanup
Monday, July 22, 13
![Page 54: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/54.jpg)
Cleanup
Invoke reset animation
Monday, July 22, 13
![Page 55: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/55.jpg)
Cleanup
Monday, July 22, 13
![Page 56: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/56.jpg)
Cleanup
Initiate cleanup
Monday, July 22, 13
![Page 57: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/57.jpg)
Cleanup
Monday, July 22, 13
![Page 58: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/58.jpg)
Cleanup part 2
Monday, July 22, 13
![Page 59: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/59.jpg)
Cleanup part 2
Destroy element
Monday, July 22, 13
![Page 60: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/60.jpg)
Cleanup part 2
Monday, July 22, 13
![Page 61: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/61.jpg)
Custom component tasks
Monday, July 22, 13
![Page 62: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/62.jpg)
Custom carousel with dynamic image loader
Monday, July 22, 13
![Page 63: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/63.jpg)
App details• Mashup of Rotten Tomatoes &
YouTube APIs- Uses a custom proxy for data
retention- Silk JS & Redis
• Recreates the feel of the Netflix mobile application
Monday, July 22, 13
![Page 64: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/64.jpg)
Problem• All trailer images download at the
same time• SLOW on 3G!
- Could incur data usage for users unnecessarily
• How do we fix this?
Monday, July 22, 13
![Page 65: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/65.jpg)
Solution• Custom extension to Container• Listens to scroller scroll event
- Loads images when they need to be
Monday, July 22, 13
![Page 66: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/66.jpg)
Configure custom DOM
Monday, July 22, 13
![Page 67: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/67.jpg)
Register event listeners
Monday, July 22, 13
![Page 68: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/68.jpg)
Register event listeners
Scroll event listener
Monday, July 22, 13
![Page 69: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/69.jpg)
Register event listeners
Monday, July 22, 13
![Page 70: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/70.jpg)
Load images on demand
Monday, July 22, 13
![Page 71: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/71.jpg)
Load images on demand
Load image
Monday, July 22, 13
![Page 72: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/72.jpg)
Load images on demand
Monday, July 22, 13
![Page 73: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/73.jpg)
DEMO
Monday, July 22, 13
![Page 74: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/74.jpg)
Custom audio FFT data renderer
Monday, July 22, 13
![Page 75: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/75.jpg)
App details• Amiga Mod music Player• Touch 2.2.1 UI• Driven by custom PhoneGap plugin
- C++ Library wrapped with ObjC• Renders FFT audio data • Custom Canvas component
- Three different modes• Really fast!!
- 20ms return cycle
Monday, July 22, 13
![Page 76: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/76.jpg)
DEMO
Monday, July 22, 13
![Page 77: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/77.jpg)
How this app works
LibBassC++
LibBassC++
Cordova Plugin
ObjectiveC
Cordova
Sencha Touch
Monday, July 22, 13
![Page 78: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/78.jpg)
How this app works
LibBassC++
LibBassC++
Cordova Plugin
ObjectiveC
Cordova
Sencha Touch
• Directory contents• Load a song• Play a song• Get song FFT data
Monday, July 22, 13
![Page 79: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/79.jpg)
How this app works
LibBassC++
LibBassC++
Cordova Plugin
ObjectiveC
Cordova
Sencha Touch
• Directory contents• Load a song• Play a song• Get song FFT data
20ms
Monday, July 22, 13
![Page 80: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/80.jpg)
Poll Cordova for data
Monday, July 22, 13
![Page 81: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/81.jpg)
Poll Cordova for data
Update data on View
Monday, July 22, 13
![Page 82: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/82.jpg)
Poll Cordova for data
Monday, July 22, 13
![Page 83: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/83.jpg)
Render data
Monday, July 22, 13
![Page 84: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/84.jpg)
Render data
Monday, July 22, 13
![Page 85: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/85.jpg)
Render data
Clear canvas
Monday, July 22, 13
![Page 86: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/86.jpg)
Render data
Monday, July 22, 13
![Page 87: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/87.jpg)
Render data
Update canvas
Monday, July 22, 13
![Page 88: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/88.jpg)
Render data
Monday, July 22, 13
![Page 89: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/89.jpg)
Resources
Monday, July 22, 13
![Page 90: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/90.jpg)
Resources
Monday, July 22, 13
![Page 91: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/91.jpg)
More about custom components
Friday 11:30AMRoom E2
Monday, July 22, 13
![Page 92: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/92.jpg)
Wrapping up• Think speed • Light DOM• Optimized JavaScript
• Write your own event handlers• Clean up after yourself!• Remove unnecessary event handlers• Remove DOM when not needed
Monday, July 22, 13
![Page 93: SenchaCon: Sencha Touch Custom Components](https://reader034.vdocuments.site/reader034/viewer/2022042814/54c66cc84a795944538b45cd/html5/thumbnails/93.jpg)
Take the Survey!• Session Survey
- Available on the SenchaCon mobile app
- http://app.senchacon.com
• Be Social!- @SenchaCon- #SenchaCon- @ModusJesus- @ModusCreate
Monday, July 22, 13