SlideShare a Scribd company logo
1 of 18
Knockout, TypeScript, and Nested Grids, Oh My!
Data-bound grids without Update Panels
© 2015 Applied Information Sciences, Inc.
Who is this guy?
 Software Engineer at Applied Information Sciences
 Contributing Author: Microsoft SharePoint 2013
Inside Out
 Year 10 of 15-Life with SharePoint
 @SPSamL
 blog.samlarko.com
 blog.Appliedis.com
© 2015 Applied Information Sciences, Inc.
Agenda
 Is TypeScript really useful?
 What are MV* Frameworks?
 Why Knockout, not Angular/Durandal/Aurelia?
 Code Walkthrough
> How it works
> Models
> ViewModels
> Views
> Extras (extensions, etc)
 Gotchas/Lessons learned/Facepalm moments
© 2015 Applied Information Sciences, Inc.
TypeScript
 Superset of JavaScript
 Strongly-typed variables
 Visual Studio Intellisense
 OOP
 Still just JavaScript
 ES Feature Implementations:
> Most ES5
> Many ES6
> Some ES7
© 2015 Applied Information Sciences, Inc.
MV* Frameworks
 MVC
> Controller determines Model
> Model passed to View
> View translates Model for presentation
> ASP.NET MVC, Angular, Aurelia
 MVVM
> Model and View are same as MVC
> VM provide data-binding between
Model and View, handles UI
actions
> Does not need to reference View
> Silverlight, Knockout, UWP apps
© 2015 Applied Information Sciences, Inc.
Momma said Knock[you]out
 JS Library
 Features
> 2-way Data-binding
> HTML Templating
 Angular/etc are frameworks with full app features
> Routing, dependency injection, scopes, services
 Knockout in SharePoint
> Already have navigation/routing
> SharePoint JSOM or REST for services
© 2015 Applied Information Sciences, Inc.
Knockout Observables
Observable
Observable Array
Computed Observable
KO Utilities
© 2015 Applied Information Sciences, Inc.
Knockout Markup
Events
Data
Containerless binding
Attributes
© 2015 Applied Information Sciences, Inc.
Knockout Extensibility
© 2015 Applied Information Sciences, Inc.
Nested Grids – Original Project
 Project had parent-child data that needed to be displayed in single page
> Search, filter, sort, paging
> Add & edit modals
 Content Types determined relationships
 No inline editing
© 2015 Applied Information Sciences, Inc.
Nested Grid Demo
 Added inline editing
> Allows multiple edits simultaneously
 Knockout HTML templates
© 2015 Applied Information Sciences, Inc.
© 2015 Applied Information Sciences, Inc.
Lessons Learned/Gotchas
© 2015 Applied Information Sciences, Inc.
Questions
© 2015 Applied Information Sciences, Inc.
Resources
 Scot Hillier post on Promises & JSOM -
http://www.shillier.com/archive/2013/03/04/using-promises-with-the-
javascript-client-object-model-in-sharepoint-2013.aspx
 TypeScript - http://www.typescriptlang.com
 KnockoutJS - http://learn.knockoutjs.com/
 DefinitelyTyped TS Definitions - http://definitelytyped.org/
 Simple KO Grid example - http://jsfiddle.net/brettwgreen/zfxmac7z/
 Rob Niemeyer - http://www.knockmeout.net/
© 2015 Applied Information Sciences, Inc.
Housekeeping…
 Download Lanyrd Mobile to get to the schedule easiest
> Available on both the Google Play Store and iOS App Store
 You must be present to win at the wrap-up…
 Remember to stop by to say hi to our sponsors
 Wifi: msevent66bq
© 2015 Applied Information Sciences, Inc.
Thanks to our Sponsors!!!
© 2015 Applied Information Sciences, Inc.
Join us at #SharePint at World of Beer of Reston in the
Towncenter just across the bridge
Why? To network with fellow SharePoint professionals
What? SharePint!!!
When? 4:45 PM
Where?
World of Beer Reston
1888 Explorer Street
Reston, VA 20190

More Related Content

Viewers also liked

Brochure Carmelo Golf - Uruguay
Brochure Carmelo Golf - UruguayBrochure Carmelo Golf - Uruguay
Brochure Carmelo Golf - UruguayPix Propiedades
 
презентація 2017 школи
презентація 2017 школипрезентація 2017 школи
презентація 2017 школиAllaSt
 
Team Leadership Toolkit_Final v1.0
Team Leadership Toolkit_Final v1.0Team Leadership Toolkit_Final v1.0
Team Leadership Toolkit_Final v1.0lee_anderson40
 
2016: Delivering Serious News-Conright
2016: Delivering Serious News-Conright2016: Delivering Serious News-Conright
2016: Delivering Serious News-ConrightSDGWEP
 
Obat wasir microlax, ambejoss atau ambeven
Obat wasir microlax, ambejoss atau ambevenObat wasir microlax, ambejoss atau ambeven
Obat wasir microlax, ambejoss atau ambevenwawan wijanarko
 
La sostenibilidad y la revolución energética
La sostenibilidad y la revolución energéticaLa sostenibilidad y la revolución energética
La sostenibilidad y la revolución energéticaNoelia del Valle Nebiolo
 
Baltic astronomy (2000 2008)–a bibliometric study
Baltic astronomy (2000 2008)–a bibliometric studyBaltic astronomy (2000 2008)–a bibliometric study
Baltic astronomy (2000 2008)–a bibliometric studyGhouse Modin Mamdapur
 

Viewers also liked (11)

Brochure Carmelo Golf - Uruguay
Brochure Carmelo Golf - UruguayBrochure Carmelo Golf - Uruguay
Brochure Carmelo Golf - Uruguay
 
Art05 huerta
Art05 huertaArt05 huerta
Art05 huerta
 
Yeli.an
Yeli.anYeli.an
Yeli.an
 
презентація 2017 школи
презентація 2017 школипрезентація 2017 школи
презентація 2017 школи
 
Team Leadership Toolkit_Final v1.0
Team Leadership Toolkit_Final v1.0Team Leadership Toolkit_Final v1.0
Team Leadership Toolkit_Final v1.0
 
2016: Delivering Serious News-Conright
2016: Delivering Serious News-Conright2016: Delivering Serious News-Conright
2016: Delivering Serious News-Conright
 
Obat wasir microlax, ambejoss atau ambeven
Obat wasir microlax, ambejoss atau ambevenObat wasir microlax, ambejoss atau ambeven
Obat wasir microlax, ambejoss atau ambeven
 
6
66
6
 
La sostenibilidad y la revolución energética
La sostenibilidad y la revolución energéticaLa sostenibilidad y la revolución energética
La sostenibilidad y la revolución energética
 
Baltic astronomy (2000 2008)–a bibliometric study
Baltic astronomy (2000 2008)–a bibliometric studyBaltic astronomy (2000 2008)–a bibliometric study
Baltic astronomy (2000 2008)–a bibliometric study
 
Cultura ciudadana Barranquilla
Cultura ciudadana BarranquillaCultura ciudadana Barranquilla
Cultura ciudadana Barranquilla
 

Similar to Knockout, TypeScript, and Nested Grids

A Smooth Transition to HTML5
A Smooth Transition to HTML5A Smooth Transition to HTML5
A Smooth Transition to HTML5Chris Bannon
 
Rajesh Uriti_7years_Sitecore_FrontEnd
Rajesh Uriti_7years_Sitecore_FrontEndRajesh Uriti_7years_Sitecore_FrontEnd
Rajesh Uriti_7years_Sitecore_FrontEndRajesh Uriti
 
SPTypeOutGrid: Knockout + TypeScript + SharePoint 2010 = Cool Grids in List F...
SPTypeOutGrid: Knockout + TypeScript + SharePoint 2010 = Cool Grids in List F...SPTypeOutGrid: Knockout + TypeScript + SharePoint 2010 = Cool Grids in List F...
SPTypeOutGrid: Knockout + TypeScript + SharePoint 2010 = Cool Grids in List F...Sam Larko
 
A Smooth Transition to HTML5 Using MVVM
A Smooth Transition to HTML5 Using MVVMA Smooth Transition to HTML5 Using MVVM
A Smooth Transition to HTML5 Using MVVMChris Bannon
 
Quick prototyping apps using JS - Ciklum, Vinnitsa
Quick prototyping apps using JS - Ciklum, VinnitsaQuick prototyping apps using JS - Ciklum, Vinnitsa
Quick prototyping apps using JS - Ciklum, VinnitsaYuriy Silvestrov
 
S Kumar Resume
S Kumar ResumeS Kumar Resume
S Kumar ResumeS Kumar
 
How Facebook's Technologies can define the future of VistA and Health IT
How Facebook's Technologies can define the future of VistA and Health ITHow Facebook's Technologies can define the future of VistA and Health IT
How Facebook's Technologies can define the future of VistA and Health ITRob Tweed
 
Prototyping app using JS and HTML5 (Ciklum Kharkiv)
Prototyping app using JS and HTML5 (Ciklum Kharkiv)Prototyping app using JS and HTML5 (Ciklum Kharkiv)
Prototyping app using JS and HTML5 (Ciklum Kharkiv)Yuriy Silvestrov
 
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation Gene Kim
 
What’s new in VS 2015 and ALM 2015
What’s new in VS 2015 and ALM 2015What’s new in VS 2015 and ALM 2015
What’s new in VS 2015 and ALM 2015SSW
 
Actively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperActively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperKarthik Reddy
 

Similar to Knockout, TypeScript, and Nested Grids (20)

A Smooth Transition to HTML5
A Smooth Transition to HTML5A Smooth Transition to HTML5
A Smooth Transition to HTML5
 
Cv vipin
Cv vipinCv vipin
Cv vipin
 
Knockout js
Knockout jsKnockout js
Knockout js
 
Rajesh Uriti_7years_Sitecore_FrontEnd
Rajesh Uriti_7years_Sitecore_FrontEndRajesh Uriti_7years_Sitecore_FrontEnd
Rajesh Uriti_7years_Sitecore_FrontEnd
 
SPTypeOutGrid: Knockout + TypeScript + SharePoint 2010 = Cool Grids in List F...
SPTypeOutGrid: Knockout + TypeScript + SharePoint 2010 = Cool Grids in List F...SPTypeOutGrid: Knockout + TypeScript + SharePoint 2010 = Cool Grids in List F...
SPTypeOutGrid: Knockout + TypeScript + SharePoint 2010 = Cool Grids in List F...
 
Manoj Kumar
Manoj KumarManoj Kumar
Manoj Kumar
 
malliCV
malliCVmalliCV
malliCV
 
Pradnya-CV
Pradnya-CVPradnya-CV
Pradnya-CV
 
MVC 1.0 / JSR 371
MVC 1.0 / JSR 371MVC 1.0 / JSR 371
MVC 1.0 / JSR 371
 
Sundaravel1- Resume.RTF
Sundaravel1- Resume.RTFSundaravel1- Resume.RTF
Sundaravel1- Resume.RTF
 
A Smooth Transition to HTML5 Using MVVM
A Smooth Transition to HTML5 Using MVVMA Smooth Transition to HTML5 Using MVVM
A Smooth Transition to HTML5 Using MVVM
 
Quick prototyping apps using JS - Ciklum, Vinnitsa
Quick prototyping apps using JS - Ciklum, VinnitsaQuick prototyping apps using JS - Ciklum, Vinnitsa
Quick prototyping apps using JS - Ciklum, Vinnitsa
 
S Kumar Resume
S Kumar ResumeS Kumar Resume
S Kumar Resume
 
How Facebook's Technologies can define the future of VistA and Health IT
How Facebook's Technologies can define the future of VistA and Health ITHow Facebook's Technologies can define the future of VistA and Health IT
How Facebook's Technologies can define the future of VistA and Health IT
 
Prototyping app using JS and HTML5 (Ciklum Kharkiv)
Prototyping app using JS and HTML5 (Ciklum Kharkiv)Prototyping app using JS and HTML5 (Ciklum Kharkiv)
Prototyping app using JS and HTML5 (Ciklum Kharkiv)
 
Subhani - CV
Subhani - CVSubhani - CV
Subhani - CV
 
Ramesh Elangovan
Ramesh ElangovanRamesh Elangovan
Ramesh Elangovan
 
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation
 
What’s new in VS 2015 and ALM 2015
What’s new in VS 2015 and ALM 2015What’s new in VS 2015 and ALM 2015
What’s new in VS 2015 and ALM 2015
 
Actively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperActively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net Developer
 

Recently uploaded

Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
Best Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfBest Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfIdiosysTechnologies1
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 

Recently uploaded (20)

Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
Best Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfBest Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdf
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 

Knockout, TypeScript, and Nested Grids

  • 1. Knockout, TypeScript, and Nested Grids, Oh My! Data-bound grids without Update Panels
  • 2. © 2015 Applied Information Sciences, Inc. Who is this guy?  Software Engineer at Applied Information Sciences  Contributing Author: Microsoft SharePoint 2013 Inside Out  Year 10 of 15-Life with SharePoint  @SPSamL  blog.samlarko.com  blog.Appliedis.com
  • 3. © 2015 Applied Information Sciences, Inc. Agenda  Is TypeScript really useful?  What are MV* Frameworks?  Why Knockout, not Angular/Durandal/Aurelia?  Code Walkthrough > How it works > Models > ViewModels > Views > Extras (extensions, etc)  Gotchas/Lessons learned/Facepalm moments
  • 4. © 2015 Applied Information Sciences, Inc. TypeScript  Superset of JavaScript  Strongly-typed variables  Visual Studio Intellisense  OOP  Still just JavaScript  ES Feature Implementations: > Most ES5 > Many ES6 > Some ES7
  • 5. © 2015 Applied Information Sciences, Inc. MV* Frameworks  MVC > Controller determines Model > Model passed to View > View translates Model for presentation > ASP.NET MVC, Angular, Aurelia  MVVM > Model and View are same as MVC > VM provide data-binding between Model and View, handles UI actions > Does not need to reference View > Silverlight, Knockout, UWP apps
  • 6. © 2015 Applied Information Sciences, Inc. Momma said Knock[you]out  JS Library  Features > 2-way Data-binding > HTML Templating  Angular/etc are frameworks with full app features > Routing, dependency injection, scopes, services  Knockout in SharePoint > Already have navigation/routing > SharePoint JSOM or REST for services
  • 7. © 2015 Applied Information Sciences, Inc. Knockout Observables Observable Observable Array Computed Observable KO Utilities
  • 8. © 2015 Applied Information Sciences, Inc. Knockout Markup Events Data Containerless binding Attributes
  • 9. © 2015 Applied Information Sciences, Inc. Knockout Extensibility
  • 10. © 2015 Applied Information Sciences, Inc. Nested Grids – Original Project  Project had parent-child data that needed to be displayed in single page > Search, filter, sort, paging > Add & edit modals  Content Types determined relationships  No inline editing
  • 11. © 2015 Applied Information Sciences, Inc. Nested Grid Demo  Added inline editing > Allows multiple edits simultaneously  Knockout HTML templates
  • 12. © 2015 Applied Information Sciences, Inc.
  • 13. © 2015 Applied Information Sciences, Inc. Lessons Learned/Gotchas
  • 14. © 2015 Applied Information Sciences, Inc. Questions
  • 15. © 2015 Applied Information Sciences, Inc. Resources  Scot Hillier post on Promises & JSOM - http://www.shillier.com/archive/2013/03/04/using-promises-with-the- javascript-client-object-model-in-sharepoint-2013.aspx  TypeScript - http://www.typescriptlang.com  KnockoutJS - http://learn.knockoutjs.com/  DefinitelyTyped TS Definitions - http://definitelytyped.org/  Simple KO Grid example - http://jsfiddle.net/brettwgreen/zfxmac7z/  Rob Niemeyer - http://www.knockmeout.net/
  • 16. © 2015 Applied Information Sciences, Inc. Housekeeping…  Download Lanyrd Mobile to get to the schedule easiest > Available on both the Google Play Store and iOS App Store  You must be present to win at the wrap-up…  Remember to stop by to say hi to our sponsors  Wifi: msevent66bq
  • 17. © 2015 Applied Information Sciences, Inc. Thanks to our Sponsors!!!
  • 18. © 2015 Applied Information Sciences, Inc. Join us at #SharePint at World of Beer of Reston in the Towncenter just across the bridge Why? To network with fellow SharePoint professionals What? SharePint!!! When? 4:45 PM Where? World of Beer Reston 1888 Explorer Street Reston, VA 20190

Editor's Notes

  1. Great for those of us who avoided JS Very C#-y
  2. Declarative binding makes for easy View data binding