- Video Link - http://bit.ly/Dynamic_ReactJS_with_emotion
- Code Link - https://codesandbox.io/s/vv5yr8zo00
- Video Link - http://bit.ly/ssr_with_emotion_and_nextjs
- Code Link - https://github.com/tgrecojs/next.js-ssr-lesson/tree/master
const Image = ({headline, bgColor, image }) => | |
<div className="banner" style={{background: bgColor}}> | |
<img className="bannerImage" src={`${image.url}`} alt="tg banner"/> | |
<h2>{headline}</h2> | |
</div> | |
export default Image; |
import Banner from '../source/Banner/component'; | |
import Post from '../source/Post/component'; | |
import Link from 'next/link'; | |
import { post1, post2, post3 } from '../Posts.tipe'; | |
import Layout from '../source/Layout/component'; | |
const App = () => | |
<Layout> | |
<Banner /> |
Shields us having to iterate thru each nested array, building up the final value on each pass.
Shields us having to iterate thru each nested array, building up the final value on each pass.
# Exhibit A: long form way of installing packages | |
npm install eslint-config-airbnb eslint-config-prettier eslint-plugin-react eslint-plugin-react-hooks eslint-plugin-html eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-prettier | |
# Exhibit B: using brace expansion | |
npm install eslint-{config-{airbnb,pretter},plugin-{react-hooks,react,html,import,jsx-a11y,prettier}} |
{ | |
"cols": [ | |
"people", | |
"dates", | |
"zips", | |
"companies" | |
], | |
"data": [ | |
[ | |
"Nigel", |
{ | |
"cols": [ | |
"people", | |
"dates", | |
"zips", | |
"companies" | |
], | |
"data": [ | |
[ | |
"Nigel", |
// Available variables: | |
// - Machine | |
// - interpret | |
// - assign | |
// - send | |
// - sendParent | |
// - spawn | |
// - raise | |
// - actions |