Skip to content

Commit

Permalink
Add usage example
Browse files Browse the repository at this point in the history
(#AdventOfPureCode 1)
  • Loading branch information
i-am-the-slime authored Dec 1, 2022
1 parent fe0dff7 commit 8057a72
Showing 1 changed file with 35 additions and 0 deletions.
35 changes: 35 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,38 @@
</img>
</a>

## Example usage:

```purescript
import React.Basic.DOM as R
import React.Basic.Hooks as React
import React.Basic.Emotion as E
myUnstyledDiv :: JSX
myUnstyledDiv = React.element R.div'
{ children: [ R.text "I have no style :(" ]
}
myStyledDiv :: JSX
myStyledDiv = E.element R.div'
{ className: "stylish-div"
, css: E.css
{ color: E.str "rebeccapurple"
, padding: E.px 4
}
}
```

Note that you need to use the apostrophised variants of react components from `React.Basic.DOM` since these represent the raw `ReactComponent`s that `Emotion` expects to work with.

## Going beyond what `style` can give you

Emotion allows you to define real CSS rules rather than only inline styles.
Here's an example of something you can't do with inline styles:

```purescript
myStyle :: Style
myStyle = E.css
{ "&:hover": E.nested (E.css { background: E.str "#fed" })
}
```

0 comments on commit 8057a72

Please sign in to comment.