SlideShare a Scribd company logo
1 of 42
Download to read offline
Elio	Struyf
Trainer	@	U2U	– MVP	
October	25th,	2017
Getting	up	to	speed	with	React
#SPUnite17	- @eliostruyf
A	brief	moment	to	the	past
#SPUnite17	- @eliostruyf
DOM	Manipulation
HTML JavaScript
#SPUnite17	- @eliostruyf
Data	binding
HTML JavaScript
var app = angular.module('feedbackApp', []);
app.controller('feedbackController', ['$scope', '$http', ($scope,
$http) => {
$scope.oneAtATime = true;
$http.get('tracks.json?ver=0.1').success(data => {
$scope.tracks = data;
});
}]
);
<body data-ng-app="feedbackApp" data-ng-
controller="feedbackController">
<ul id="tracks">
<li data-ng-repeat="track in tracks" class="track">
<h2>{{track.title}}</h2>
<ul class="trackSessions">
<li data-ng-repeat="session in track.sessions"
class="session">
<div class="sessionDetails">
<a data-ng-href="{{session.url}}">{{session.title}}</a>
<span ng-if="session.speaker">by {{session.speaker}}
({{session.start}} - {{session.end}})</span>
<span class="note" ng-
if="session.note">{{session.note}}</span>
</div>
</li>
</ul>
</li>
</ul>
</body>
#SPUnite17	- @eliostruyf
React	is	a	JavaScript	library	for	
building	user	interfaces
#SPUnite17	- @eliostruyf
Components
#SPUnite17	- @eliostruyf
Component	based
#SPUnite17	- @eliostruyf
React	does	not	separate	
component	templates
#SPUnite17	- @eliostruyf
You	write	HTML	in	TypeScript
#SPUnite17	- @eliostruyf
JSX	and	TSX
Adds	XML	syntax	to	JavaScript	/	TypeScript
<a href="https://www.eliostruyf.com" title="Elio Struyf">My blog</a>
React.createElement("a", { href: "https://www.eliostruyf.com",
title: "Elio Struyf" }, "My blog")
JSX
Plain	JavaScript
#SPUnite17	- @eliostruyf
Variables	in	JSX	/	TSX
<a href={blogLink.url} title={blogLink.title}>{blogLink.text}</a>
React.createElement("a", { href: blogLink.url, title:
blogLink.title }, blogLink.text)
Plain	JavaScript
JSX
#SPUnite17	- @eliostruyf
Simple	component
class ComponentName extends React.Component<{}, {}> {
public render() {
return (
<div>
Component name should start with a capital letter
</div>
);
}
}
#SPUnite17	- @eliostruyf
Using	the	component	component
<ComponentName />
#SPUnite17	- @eliostruyf
Events
#SPUnite17	- @eliostruyf
Using	the	component	component
class Sample extends React.Component<{}, {}> {
private _linkClick() {
console.log('Hey, you clicked me!');
}
public render(): React.ReactElement<{}> {
return (
<a href="javascript:;" onClick={this._linkClick}>Click me!</a>
);
}
}
#SPUnite17	- @eliostruyf
How	do	we	convert	this?
#SPUnite17	- @eliostruyf
You	don’t	have	to	
worry	about	it.	In	
SPFx everything	is	
already	in	place.
#SPUnite17	- @eliostruyf
JSX	limitations
#SPUnite17	- @eliostruyf
Some	keywords	are	reserved	in	JS	/	TS
• class	à className
• colspan à colSpan
• innerHTML à dangerouslySetInnerHTML
• for	à htmlFor
• style	à style	(it	is	an	object!)
#SPUnite17	- @eliostruyf
Demo:	Component
#SPUnite17	- @eliostruyf
Inputs	(props)	and	state
#SPUnite17	- @eliostruyf
Input	properties	or	props
• Passing	information	to	your	component
• Do	not	update	properties	in	your	component
• Used	for	rendering	or	calculations
<div>
Description: {this.props.description}
</div>
#SPUnite17	- @eliostruyf
Passing	props	to	components
<ComponentName description="This is the description" />
#SPUnite17	- @eliostruyf
Component	state	or	state
• Keep	hold	of	the	current	components	variables
• Considered	private	to	the	component
constructor(props: IProps) {
super(props);
// initialize the state
this.state = {
show: false
};
}
#SPUnite17	- @eliostruyf
Update	the	component	state
• Update	state	by	using	setState
• Think	of	it	as	a	request rather	than	an	immediate	command
• For	better	performance,	React	may	delay	it
this.setState((prevState, props) => {
return {
show: !prevState.show
};
});
#SPUnite17	- @eliostruyf
Demo:	
Working	with	
props	and	states
#SPUnite17	- @eliostruyf
Listing	items
#SPUnite17	- @eliostruyf
Important	things	when	listing	items
• Always	use	a	key
• Try	to	avoid	using	then	item	index
public render() {
const itemList = [{ id: 0, title: "Hello" }, { id: 2, title: "," },
{ id: 4, title: "World" }];
return (
<ul> {
itemList.map(item => {
return <li key={item.id}>{item.title}</li>;
}) }
</ul>
);
}
#SPUnite17	- @eliostruyf
Virtual	DOM
#SPUnite17	- @eliostruyf
Virtual	DOM	and	change	detection
The	real	DOMVirtual	DOM
#SPUnite17	- @eliostruyf
Demo:	Listing	items
#SPUnite17	- @eliostruyf
Lifecycle	hooks
#SPUnite17	- @eliostruyf
Lifecycle	hooks
• Mounting:
• constructor,	componentWillMount,	componentDidMount
• Updating:
• componentWillReceiveProps,	shouldComponentUpdate,	
componentWillUpdate,	componentDidUpdate
• Unmounting
• componentWillUnmount
#SPUnite17	- @eliostruyf
Calling	APIs	and	storing	data
#SPUnite17	- @eliostruyf
Where	to	call	for	data
• Do	not	do	async call	in	the	constructor
• Use	the	componentDidMount lifecycle	hook
public componentDidMount(): void {
this._getAsyncData().then(items => {
if (items) {
this.setState({
items
});
}
});
}
#SPUnite17	- @eliostruyf
Demo:	Retrieving	async data
#SPUnite17	- @eliostruyf
Working	with	SCSS	in	SPFx
#SPUnite17	- @eliostruyf
Demo:	
Styling	your	component
Questions?
Office Servers & Services MVP
Azure / Office 365 / SharePoint
@eliostruyf
www.eliostruyf.com
info@estruyf.be
Elio	Struyf
Lead trainer and architect
#SPUnite17	- @eliostruyf

More Related Content

What's hot

What's hot (13)

Rntb20200805
Rntb20200805Rntb20200805
Rntb20200805
 
AngularJS $http Interceptors (Explanation and Examples)
AngularJS $http Interceptors (Explanation and Examples)AngularJS $http Interceptors (Explanation and Examples)
AngularJS $http Interceptors (Explanation and Examples)
 
Android getting started
Android getting startedAndroid getting started
Android getting started
 
Altitude NY 2018: Programming the edge workshop
Altitude NY 2018: Programming the edge workshopAltitude NY 2018: Programming the edge workshop
Altitude NY 2018: Programming the edge workshop
 
G* on GAE/J 挑戦編
G* on GAE/J 挑戦編G* on GAE/J 挑戦編
G* on GAE/J 挑戦編
 
Automation in angular js
Automation in angular jsAutomation in angular js
Automation in angular js
 
Routing @ Scuk.cz
Routing @ Scuk.czRouting @ Scuk.cz
Routing @ Scuk.cz
 
Gaelyk
GaelykGaelyk
Gaelyk
 
G*なクラウド ~雲のかなたに~
G*なクラウド ~雲のかなたに~G*なクラウド ~雲のかなたに~
G*なクラウド ~雲のかなたに~
 
Uninstall opera
Uninstall operaUninstall opera
Uninstall opera
 
Reduxing like a pro
Reduxing like a proReduxing like a pro
Reduxing like a pro
 
Debugging JavaScript with Chrome
Debugging JavaScript with ChromeDebugging JavaScript with Chrome
Debugging JavaScript with Chrome
 
Altitude NY 2018: 132 websites, 1 service: Your local news runs on Fastly
Altitude NY 2018: 132 websites, 1 service: Your local news runs on FastlyAltitude NY 2018: 132 websites, 1 service: Your local news runs on Fastly
Altitude NY 2018: 132 websites, 1 service: Your local news runs on Fastly
 

Viewers also liked

SPUnite17 Caveman Project Management for Agile - Scrum - Kanban teams with Of...
SPUnite17 Caveman Project Management for Agile - Scrum - Kanban teams with Of...SPUnite17 Caveman Project Management for Agile - Scrum - Kanban teams with Of...
SPUnite17 Caveman Project Management for Agile - Scrum - Kanban teams with Of...
NCCOMMS
 

Viewers also liked (18)

SPUnite17 Cost Effective Risk Mitigation
SPUnite17 Cost Effective Risk MitigationSPUnite17 Cost Effective Risk Mitigation
SPUnite17 Cost Effective Risk Mitigation
 
SPUnite17 Big Move - Learning from the Shell O365 Migration
SPUnite17 Big Move - Learning from the Shell O365 MigrationSPUnite17 Big Move - Learning from the Shell O365 Migration
SPUnite17 Big Move - Learning from the Shell O365 Migration
 
SPUnite17 Introducing Logic Apps
SPUnite17 Introducing Logic AppsSPUnite17 Introducing Logic Apps
SPUnite17 Introducing Logic Apps
 
SPUnite17 Who Are You and What Do You Want
SPUnite17 Who Are You and What Do You WantSPUnite17 Who Are You and What Do You Want
SPUnite17 Who Are You and What Do You Want
 
SPUnite17 Transforming your Organisation into a Digital Workplace
SPUnite17 Transforming your Organisation into a Digital WorkplaceSPUnite17 Transforming your Organisation into a Digital Workplace
SPUnite17 Transforming your Organisation into a Digital Workplace
 
SPUnite17 If I Ran the SharePoint Zoo
SPUnite17 If I Ran the SharePoint ZooSPUnite17 If I Ran the SharePoint Zoo
SPUnite17 If I Ran the SharePoint Zoo
 
SPUnite17 The Accidental SPO Admin
SPUnite17 The Accidental SPO AdminSPUnite17 The Accidental SPO Admin
SPUnite17 The Accidental SPO Admin
 
SPUnite17 SPFx Extensions
SPUnite17 SPFx ExtensionsSPUnite17 SPFx Extensions
SPUnite17 SPFx Extensions
 
SPUnite17 Unified Search Experiences
SPUnite17 Unified Search ExperiencesSPUnite17 Unified Search Experiences
SPUnite17 Unified Search Experiences
 
SPUnite17 The New Enterprise Content Management
SPUnite17 The New Enterprise Content ManagementSPUnite17 The New Enterprise Content Management
SPUnite17 The New Enterprise Content Management
 
SPUnite17 Caveman Project Management for Agile - Scrum - Kanban teams with Of...
SPUnite17 Caveman Project Management for Agile - Scrum - Kanban teams with Of...SPUnite17 Caveman Project Management for Agile - Scrum - Kanban teams with Of...
SPUnite17 Caveman Project Management for Agile - Scrum - Kanban teams with Of...
 
SPUnite17 Timer Jobs Event Handlers
SPUnite17 Timer Jobs Event HandlersSPUnite17 Timer Jobs Event Handlers
SPUnite17 Timer Jobs Event Handlers
 
SPUnite17 Setting Up Development Environment
SPUnite17 Setting Up Development EnvironmentSPUnite17 Setting Up Development Environment
SPUnite17 Setting Up Development Environment
 
SPUnite17 O365 Practical Adoption Strategies
SPUnite17 O365 Practical Adoption StrategiesSPUnite17 O365 Practical Adoption Strategies
SPUnite17 O365 Practical Adoption Strategies
 
SPUnite17 Deep Dive Building Solutions
SPUnite17 Deep Dive Building SolutionsSPUnite17 Deep Dive Building Solutions
SPUnite17 Deep Dive Building Solutions
 
SPUnite17 Secure Collaboration with AIP
SPUnite17 Secure Collaboration with AIPSPUnite17 Secure Collaboration with AIP
SPUnite17 Secure Collaboration with AIP
 
SPUnite17 TypeScript for SharePoint Developers
SPUnite17 TypeScript for SharePoint DevelopersSPUnite17 TypeScript for SharePoint Developers
SPUnite17 TypeScript for SharePoint Developers
 
SPUnite17 Yet Another Search Driven Publishing Site
SPUnite17 Yet Another Search Driven Publishing SiteSPUnite17 Yet Another Search Driven Publishing Site
SPUnite17 Yet Another Search Driven Publishing Site
 

Similar to SPUnite17 Getting up to Speed with React

Javascript Continues Integration in Jenkins with AngularJS
Javascript Continues Integration in Jenkins with AngularJSJavascript Continues Integration in Jenkins with AngularJS
Javascript Continues Integration in Jenkins with AngularJS
Ladislav Prskavec
 
Doctype htm1
Doctype htm1Doctype htm1
Doctype htm1
Eddy_TKJ
 

Similar to SPUnite17 Getting up to Speed with React (20)

Sharing Data between controllers in different ways.
Sharing Data between controllers in different ways.Sharing Data between controllers in different ways.
Sharing Data between controllers in different ways.
 
Different way to share data between controllers in angular js
Different way to share data between controllers in angular jsDifferent way to share data between controllers in angular js
Different way to share data between controllers in angular js
 
Introduction to AngularJS
Introduction to AngularJSIntroduction to AngularJS
Introduction to AngularJS
 
Angular js - 4developers 12 kwietnia 2013
Angular js - 4developers 12 kwietnia 2013Angular js - 4developers 12 kwietnia 2013
Angular js - 4developers 12 kwietnia 2013
 
Lone StarPHP 2013 - Building Web Apps from a New Angle
Lone StarPHP 2013 - Building Web Apps from a New AngleLone StarPHP 2013 - Building Web Apps from a New Angle
Lone StarPHP 2013 - Building Web Apps from a New Angle
 
Javascript Continues Integration in Jenkins with AngularJS
Javascript Continues Integration in Jenkins with AngularJSJavascript Continues Integration in Jenkins with AngularJS
Javascript Continues Integration in Jenkins with AngularJS
 
DataXDay - Building a Real Time Analytics API at Scale
DataXDay - Building a Real Time Analytics API at ScaleDataXDay - Building a Real Time Analytics API at Scale
DataXDay - Building a Real Time Analytics API at Scale
 
Workshop quality assurance for php projects tek12
Workshop quality assurance for php projects tek12Workshop quality assurance for php projects tek12
Workshop quality assurance for php projects tek12
 
Client-side Rendering with AngularJS
Client-side Rendering with AngularJSClient-side Rendering with AngularJS
Client-side Rendering with AngularJS
 
API Days Paris - Automatic Testing of (RESTful) API Documentation
API Days Paris - Automatic Testing of (RESTful) API DocumentationAPI Days Paris - Automatic Testing of (RESTful) API Documentation
API Days Paris - Automatic Testing of (RESTful) API Documentation
 
REST API for your WP7 App
REST API for your WP7 AppREST API for your WP7 App
REST API for your WP7 App
 
Building RESTful applications using Spring MVC
Building RESTful applications using Spring MVCBuilding RESTful applications using Spring MVC
Building RESTful applications using Spring MVC
 
Server side data sync for mobile apps with silex
Server side data sync for mobile apps with silexServer side data sync for mobile apps with silex
Server side data sync for mobile apps with silex
 
The Big Picture and How to Get Started
The Big Picture and How to Get StartedThe Big Picture and How to Get Started
The Big Picture and How to Get Started
 
Doctype htm1
Doctype htm1Doctype htm1
Doctype htm1
 
Supercharging WordPress Development - Wordcamp Brighton 2019
Supercharging WordPress Development - Wordcamp Brighton 2019Supercharging WordPress Development - Wordcamp Brighton 2019
Supercharging WordPress Development - Wordcamp Brighton 2019
 
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012
 
WordPress Realtime - WordCamp São Paulo 2015
WordPress Realtime - WordCamp São Paulo 2015WordPress Realtime - WordCamp São Paulo 2015
WordPress Realtime - WordCamp São Paulo 2015
 
Workshop quality assurance for php projects - ZendCon 2013
Workshop quality assurance for php projects - ZendCon 2013Workshop quality assurance for php projects - ZendCon 2013
Workshop quality assurance for php projects - ZendCon 2013
 
AngularJS Mobile Warsaw 20-10-2014
AngularJS Mobile Warsaw 20-10-2014AngularJS Mobile Warsaw 20-10-2014
AngularJS Mobile Warsaw 20-10-2014
 

More from NCCOMMS

More from NCCOMMS (20)

O365Con19 - UI:UX 101 Learn How to Design Custom Experiences for SharePoint -...
O365Con19 - UI:UX 101 Learn How to Design Custom Experiences for SharePoint -...O365Con19 - UI:UX 101 Learn How to Design Custom Experiences for SharePoint -...
O365Con19 - UI:UX 101 Learn How to Design Custom Experiences for SharePoint -...
 
O365Con19 - Model-driven Apps or Canvas Apps? - Rick Bakker
O365Con19 - Model-driven Apps or Canvas Apps? - Rick BakkerO365Con19 - Model-driven Apps or Canvas Apps? - Rick Bakker
O365Con19 - Model-driven Apps or Canvas Apps? - Rick Bakker
 
O365Con19 - Office 365 Groups Surviving the Real World - Jasper Oosterveld
O365Con19 - Office 365 Groups Surviving the Real World - Jasper OosterveldO365Con19 - Office 365 Groups Surviving the Real World - Jasper Oosterveld
O365Con19 - Office 365 Groups Surviving the Real World - Jasper Oosterveld
 
O365Con19 - Developing Timerjob and Eventhandler Equivalents - Adis Jugo
O365Con19 - Developing Timerjob and Eventhandler Equivalents - Adis JugoO365Con19 - Developing Timerjob and Eventhandler Equivalents - Adis Jugo
O365Con19 - Developing Timerjob and Eventhandler Equivalents - Adis Jugo
 
O365Con19 - Sharepoint with (Artificial) Intelligence - Adis Jugo
O365Con19 - Sharepoint with (Artificial) Intelligence - Adis JugoO365Con19 - Sharepoint with (Artificial) Intelligence - Adis Jugo
O365Con19 - Sharepoint with (Artificial) Intelligence - Adis Jugo
 
O365Con19 - What Do You Mean 90 days Isn't Enough - Paul Hunt
O365Con19 - What Do You Mean 90 days Isn't Enough - Paul HuntO365Con19 - What Do You Mean 90 days Isn't Enough - Paul Hunt
O365Con19 - What Do You Mean 90 days Isn't Enough - Paul Hunt
 
O365Con19 - Tips and Tricks for Complex Migrations to SharePoint Online - And...
O365Con19 - Tips and Tricks for Complex Migrations to SharePoint Online - And...O365Con19 - Tips and Tricks for Complex Migrations to SharePoint Online - And...
O365Con19 - Tips and Tricks for Complex Migrations to SharePoint Online - And...
 
O365Con19 - Start Developing Teams Tabs and SharePoint Webparts with SPFX - O...
O365Con19 - Start Developing Teams Tabs and SharePoint Webparts with SPFX - O...O365Con19 - Start Developing Teams Tabs and SharePoint Webparts with SPFX - O...
O365Con19 - Start Developing Teams Tabs and SharePoint Webparts with SPFX - O...
 
O365Con19 - Start Your Journey from Skype for Business to Teams - Sasja Beere...
O365Con19 - Start Your Journey from Skype for Business to Teams - Sasja Beere...O365Con19 - Start Your Journey from Skype for Business to Teams - Sasja Beere...
O365Con19 - Start Your Journey from Skype for Business to Teams - Sasja Beere...
 
O365Con19 - Lets Get Started with Azure Container Instances - Jussi Roine
O365Con19 - Lets Get Started with Azure Container Instances - Jussi RoineO365Con19 - Lets Get Started with Azure Container Instances - Jussi Roine
O365Con19 - Lets Get Started with Azure Container Instances - Jussi Roine
 
O365Con19 - Azure Blackbelt - Jussi Roine
O365Con19 - Azure Blackbelt - Jussi RoineO365Con19 - Azure Blackbelt - Jussi Roine
O365Con19 - Azure Blackbelt - Jussi Roine
 
O365Con19 - Customise the UI in Modern SharePoint Workspaces - Corinna Lins
O365Con19 - Customise the UI in Modern SharePoint Workspaces - Corinna LinsO365Con19 - Customise the UI in Modern SharePoint Workspaces - Corinna Lins
O365Con19 - Customise the UI in Modern SharePoint Workspaces - Corinna Lins
 
O365Con19 - Be The Protagonist of Your Modern Workplace - Corinna Lins
O365Con19 - Be The Protagonist of Your Modern Workplace - Corinna LinsO365Con19 - Be The Protagonist of Your Modern Workplace - Corinna Lins
O365Con19 - Be The Protagonist of Your Modern Workplace - Corinna Lins
 
O365Con19 - How to Really Manage all your Tasks Across Microsoft 365 - Luise ...
O365Con19 - How to Really Manage all your Tasks Across Microsoft 365 - Luise ...O365Con19 - How to Really Manage all your Tasks Across Microsoft 365 - Luise ...
O365Con19 - How to Really Manage all your Tasks Across Microsoft 365 - Luise ...
 
O365Con19 - Sharing Code Efficiently in your Organisation - Elio Struyf
O365Con19 - Sharing Code Efficiently in your Organisation - Elio StruyfO365Con19 - Sharing Code Efficiently in your Organisation - Elio Struyf
O365Con19 - Sharing Code Efficiently in your Organisation - Elio Struyf
 
O365Con19 - Things I've Learned While Building a Product on SharePoint Modern...
O365Con19 - Things I've Learned While Building a Product on SharePoint Modern...O365Con19 - Things I've Learned While Building a Product on SharePoint Modern...
O365Con19 - Things I've Learned While Building a Product on SharePoint Modern...
 
O365Con19 - Keep Control of Your Data with AIP and CA - Bram de Jager
O365Con19 - Keep Control of Your Data with AIP and CA - Bram de JagerO365Con19 - Keep Control of Your Data with AIP and CA - Bram de Jager
O365Con19 - Keep Control of Your Data with AIP and CA - Bram de Jager
 
O365Con19 - Kaizala a Dive Into the Unknown - Rick van Rousselt
O365Con19 - Kaizala a Dive Into the Unknown - Rick van RousseltO365Con19 - Kaizala a Dive Into the Unknown - Rick van Rousselt
O365Con19 - Kaizala a Dive Into the Unknown - Rick van Rousselt
 
O365Con19 - How to Inspire Users to Unstick from Email - Luise Freese
O365Con19 - How to Inspire Users to Unstick from Email - Luise FreeseO365Con19 - How to Inspire Users to Unstick from Email - Luise Freese
O365Con19 - How to Inspire Users to Unstick from Email - Luise Freese
 
O365Con19 - O365 Identity Management and The Golden Config - Chris Goosen
O365Con19 - O365 Identity Management and The Golden Config - Chris GoosenO365Con19 - O365 Identity Management and The Golden Config - Chris Goosen
O365Con19 - O365 Identity Management and The Golden Config - Chris Goosen
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Recently uploaded (20)

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 

SPUnite17 Getting up to Speed with React