SlideShare a Scribd company logo
Dynamic package loading
and routing with Ext JS
Nils Dehl
1
Karlsruhe, 10.04.2019
Nils Dehl
• JavaScript Consultant and Trainer
• over 10 years Ext JS experience
• Sencha MVP
• @nilsdehl
• nils.dehl@dkd.de
• https://github.com/mrsunshine
2
Routing
3
4
5
6
http://domain.tld/#person/1234
7
8
9
10
http://localhost:3000/#login
11
12Coworkee/client/app/view/viewport/ViewportController.js
13
me.redirectTo('login', {replace: true});
Coworkee/client/app/view/viewport/ViewportController.js
14Coworkee/client/app/Application.js
15
16
http://lh:3000/#person/2342
17
18Coworkee/client/app/view/main/MainController.js
19Coworkee/client/app/view/viewport/ViewportController.js
20Coworkee/client/app/view/viewport/ViewportController.js
21
22Coworkee/client/app/view/viewport/ViewportController.js
23
24Coworkee/client/packages/local/coworkee-widgets/src/BrowseController.js
25
http://lh:3000/#home|range/past
26
27Coworkee/client/packages/local/Home/src/HomeController.js
Coworkee/client/app/view/main/MainController.js
28Coworkee/client/app/view/viewport/ViewportController.js
Packages
29
30
31
32
sencha generate package --namespace App.view.auth Auth
33
34
35Coworkee/client/packages/local/Auth/package.json
36Coworkee/client/app.json
37Coworkee/client/packages/local/History/package.json
38Coworkee/client/packages/local/coworkee/package.json
39
sencha package build
40
41
sencha package repo init -name “dkd" -email “nd@dkd.de”
42
sencha package add coworkee.pkg
Dynamic Package Loading
43
44
Ext JS Version < 6.5
45
requires: [
“package-loader”
]
46
47
sencha generate package -require Home 
then generate package -require Office 
then generate package -require Organization 
then generate package -require Person 
then generate package -require History
48Coworkee/client/app.json
49
sencha app build —uses
50
51
52Coworkee/client/app/view/main/MainController.js
53Coworkee/client/app/view/main/MainController.js
54
55Coworkee/client/app/view/main/MainController.js
56Coworkee/client/app/view/main/MainController.js
Resources
57
Coworkee Example App:
https://github.com/mrsunshine/Coworkee
Routing Guide:
https://docs.sencha.com/extjs/6.7.0/guides/application_architecture/router.html
Ext.route.Router:
https://docs.sencha.com/extjs/6.7.0/classic/Ext.route.Router.html
Dynamic Package Loading Blog Post:
https://mitchellsimoens.com/2017/04/12/package-loading/
Ext.Package:
https://docs.sencha.com/extjs/6.7.0/classic/Ext.Package.html
dkd sagt Danke
dkd Internet Service GmbH
Kaiserstraße 73, 60329 Frankfurt am Main
58
Quelle: Matthias Dörzbacher, dkd Internet Service GmbH
59
Nils Dehl
• JavaScript Consultant and Trainer
• over 10 years Ext JS experience
• Sencha MVP
• @nilsdehl
• nils.dehl@dkd.de
• https://github.com/mrsunshine
60

More Related Content

PPTX
Beginner’s Guide to Windows Installer XML (WiX)
PDF
初窺 Flutter 開發.pdf
PPTX
Hololens2 MRTK2.7(OpenXR) でのビルド環境構築(環境設定からビルドまで)
PPT
Présentation Maven
PDF
Common Lisp ユーザへのScheme紹介
PDF
徹底解説 Unity Reflect【開発編 ver2.0】
PPTX
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
PPTX
TextMeshProを使った絵文字対応について
Beginner’s Guide to Windows Installer XML (WiX)
初窺 Flutter 開發.pdf
Hololens2 MRTK2.7(OpenXR) でのビルド環境構築(環境設定からビルドまで)
Présentation Maven
Common Lisp ユーザへのScheme紹介
徹底解説 Unity Reflect【開発編 ver2.0】
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
TextMeshProを使った絵文字対応について

What's hot (9)

PPTX
UnityによるHoloLens用UWPアプリケーション開発の勘所
PDF
【Unity道場スペシャル 2017大阪】トゥーンシェーダー・マニアクス2 〜ユニティちゃんトゥーンシェーダー2.0徹底解説〜
PDF
Hello, ReactorKit 
PDF
【Unity Reflect】足りない要素を追加してみよう~開発導入編~
PDF
その素敵なUI基盤を目指して・・・
PDF
ARコンテンツ作成勉強会:UnityとVuforiaではじめるAR [主要部分]
PDF
MRTK V2.3 Spatial Awareness
PDF
CleanArchitecture with AssemblyDefinition in unity
PPTX
ドメイン駆動開発 勉強会 ①
UnityによるHoloLens用UWPアプリケーション開発の勘所
【Unity道場スペシャル 2017大阪】トゥーンシェーダー・マニアクス2 〜ユニティちゃんトゥーンシェーダー2.0徹底解説〜
Hello, ReactorKit 
【Unity Reflect】足りない要素を追加してみよう~開発導入編~
その素敵なUI基盤を目指して・・・
ARコンテンツ作成勉強会:UnityとVuforiaではじめるAR [主要部分]
MRTK V2.3 Spatial Awareness
CleanArchitecture with AssemblyDefinition in unity
ドメイン駆動開発 勉強会 ①
Ad

Similar to Dynamic package loading 
and routing with Ext JS (20)

PDF
Web Applications with AngularJS
PPTX
Single page applications mit asp.net mvc und der asp.net web api
PPTX
ASPC 2015 - Building JavaScript to Stand the Test of Time
PDF
Max Voloshin - "Organization of frontend development for products with micros...
PDF
Karlsruher Entwicklertag 2013 - Webanwendungen mit AngularJS
PDF
Front End Development for Back End Developers - Denver Startup Week 2017
PDF
resume_2016_low_rez
PDF
DCEU 18: App-in-a-Box with Docker Application Packages
PPTX
Gapand 2017 - Diseñando Arquitecturas Serverless en Azure
PPTX
Microsoft Graph: Connect to essential data every app needs
PPTX
Microsoft Graph: Connect to essential data every app needs
PPTX
GDG Ibadan #pwa
PDF
ResumeWithPassport
PPTX
Consumer Driven Contracts and Your Microservice Architecture
PDF
PlatformCon 23: "The Busy Platform Engineers Guide to API Gateways"
PDF
RESS: An Evolution of Responsive Web Design
PDF
qadeer intern report.pdf
PPTX
That’s not your var – JavaScript best practices for C# developers
PDF
Rest to Graphql
PPTX
European SharePoint Conference 2018 - Build an intelligent application by con...
Web Applications with AngularJS
Single page applications mit asp.net mvc und der asp.net web api
ASPC 2015 - Building JavaScript to Stand the Test of Time
Max Voloshin - "Organization of frontend development for products with micros...
Karlsruher Entwicklertag 2013 - Webanwendungen mit AngularJS
Front End Development for Back End Developers - Denver Startup Week 2017
resume_2016_low_rez
DCEU 18: App-in-a-Box with Docker Application Packages
Gapand 2017 - Diseñando Arquitecturas Serverless en Azure
Microsoft Graph: Connect to essential data every app needs
Microsoft Graph: Connect to essential data every app needs
GDG Ibadan #pwa
ResumeWithPassport
Consumer Driven Contracts and Your Microservice Architecture
PlatformCon 23: "The Busy Platform Engineers Guide to API Gateways"
RESS: An Evolution of Responsive Web Design
qadeer intern report.pdf
That’s not your var – JavaScript best practices for C# developers
Rest to Graphql
European SharePoint Conference 2018 - Build an intelligent application by con...
Ad

More from Nils Dehl (7)

PDF
Sencha Touch meets TYPO3 CMS
PDF
jsday.it - develop and test custom components for sencha touch by nils dehl
PDF
Sencha Touch meets TYPO3
PDF
Workshop getting started with sencha touch 2 - nils dehl
PDF
SenchaTouch 2 and Sencha.io
PDF
SenchaCon 2011 VGF Showcase
PDF
Development of the TYPO3 Phoenix User Interface with Ext JS
Sencha Touch meets TYPO3 CMS
jsday.it - develop and test custom components for sencha touch by nils dehl
Sencha Touch meets TYPO3
Workshop getting started with sencha touch 2 - nils dehl
SenchaTouch 2 and Sencha.io
SenchaCon 2011 VGF Showcase
Development of the TYPO3 Phoenix User Interface with Ext JS

Recently uploaded (20)

PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Nekopoi APK 2025 free lastest update
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
Digital Strategies for Manufacturing Companies
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PPTX
L1 - Introduction to python Backend.pptx
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PPTX
Transform Your Business with a Software ERP System
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PPTX
Essential Infomation Tech presentation.pptx
PPTX
Introduction to Artificial Intelligence
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
AI in Product Development-omnex systems
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
How to Choose the Right IT Partner for Your Business in Malaysia
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Operating system designcfffgfgggggggvggggggggg
Nekopoi APK 2025 free lastest update
Odoo POS Development Services by CandidRoot Solutions
Digital Strategies for Manufacturing Companies
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
L1 - Introduction to python Backend.pptx
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Transform Your Business with a Software ERP System
Design an Analysis of Algorithms I-SECS-1021-03
Essential Infomation Tech presentation.pptx
Introduction to Artificial Intelligence
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Softaken Excel to vCard Converter Software.pdf
AI in Product Development-omnex systems
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Wondershare Filmora 15 Crack With Activation Key [2025

Dynamic package loading 
and routing with Ext JS

Editor's Notes

  • #2: Routing Packages dynamic package loading
  • #4: Who is using routing?
  • #5: Single Page Applications no Page loads no History Back Button leaves app
  • #6: Example app Coworkee based on Sencha, extend, on GitHub Track app state bookmark / email make app stateful open specific state view of an SPA app routing should not be used to store any data or session
  • #7: Fragment Identifier control the history stack of the browser without reloading the current page
  • #8: history stack of an SPA
  • #9: back and forward button working
  • #10: the ext router lets look how routing works
  • #11: start with the login route
  • #13: action file Path on slide in the footer slides will be shared
  • #14: replace When set to true, this will replace the current resource in the history stack with the hash being set. force Even if the hash will not change, setting this to true will force the Ext.route.Router to react.
  • #15: defaultToken
  • #16: default route #home
  • #17: routes with params
  • #18: load a person see url in footer
  • #20: before
  • #22: un matched route
  • #24: onRouteChange Event add search filter to route
  • #25: control add listener “routechange”
  • #26: Multi route Pipe |
  • #29: wildcard Ext.History.getToken()
  • #30: Share code between applications reusability structure sharing (Package Repository / Github ) Ext core / themes / fonts / components scheduler or gant/ custom code who is using?
  • #31: core modern / classic themes fonts ux / google
  • #32: app packages local remote
  • #33: generate package via Sencha CMD
  • #37: theme require uses
  • #38: require other packages / dependencies
  • #40: inside of package folder
  • #42: local repo init host repo on http get example nexus
  • #43: add to local repo from build folder
  • #44: reduce initial load size for big apps Load on demand user rights who is using?
  • #46: require package-loader package in app.josn
  • #47: modules as packages before it was all in app
  • #49: theme require uses