import { Head, Appear } from 'mdx-deck'
export { default as theme } from './theme' import {CodeBlock} from './components/CodeBlock' import BlueLayout from './components/BlueLayout' import {ComponentBasedContent} from './components/ComponentBasedContent' import Counter from './components/Counter' import { installCra, helloWorldComponent, jsxExample, withoutJsxExample, functionalComponent, classComponent, renderingAComponent, componentWithState, counterComponent, declarativeCode } from './codesnippets'
<title>DevCBali Workshop</title>export default BlueLayout
<img src={require('file-loader!./images/fbdevcircle.png')} />
ReactJS Workshop
- Daftar Github
- Install NodeJS
- Install React dev tools (tersedia di Chrome dan Firefox)
React adalah library untuk membuat user interface
http://maketea.co.uk/2014/03/05/building-robust-web-apps-with-react-part-1.html
Learn once, Write anywhere
React 360 (VR), React Native (Android & iOS), Node
{installCra}
{helloWorldComponent}
{jsxExample} = {withoutJsxExample}
Component dapat menerima input (yang disebut props) dan mengembalikan React element yang mendekripsikan apa yang seharusnya ditampilkan
{functionalComponent}
{classComponent}
{renderingAComponent}
Ingatlah kalau element hanyalah sebuah object jadi bisa disimpan di variable
State sama dengan props namun bersifat private dan dikontrol penuh oleh Component (dapat diubah)
{componentWithState}
{counterComponent}
| Mounting | Updating | Unmounting |
|---|---|---|
| contructor | shouldComponentUpdate | componentWillUnmount |
| render | render | |
| componentDidMount | componentDidUpdate |
npm install -g create-react-appcreate-react-app shopping-cart- Buka link https://github.com/DevCBali/react-shopping-cart-workshop
- Push project ke github masing-masing
- Buat akun Netlify (bisa dengan github)
- Deploy
- ES6 (closure, high-order function, arrow function, class, destructure)
- Functional Programming
- Router (React Router, Reach Router)
- Data Management (Redux, Mobx, Apollo, ...)

