jxnblk / tag-hoc

React HOC to set an element's tag and remove props

Home Page:http://jxnblk.com/tag-hoc/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

tag-hoc

React HOC to set an element's tag and remove props

Useful for removing style props in libraries like styled-components

npm i tag-hoc

Usage

// Example with styled-components
// import React from 'react'
// import { render } from 'react-dom'
// import styled from 'styled-components'
// import tag from 'tag-hoc'

const propsToRemove = [
  'color'
]

const Tag = tag(propsToRemove)
const Base = Tag('h2')
const Title = styled(Base)`
  color: ${props => props.color};
`

Title.defaultProps = {
  color: '#07c'
}

render(
  <Title
    is='h1'
    color='tomato'>
    Hello
  </Title>
)

This renders an <h1> element with the is and color props stripped from the HTML.

MIT License

About

React HOC to set an element's tag and remove props

http://jxnblk.com/tag-hoc/

License:MIT License


Languages

Language:JavaScript 100.0%