在数组中使用情绪(情绪/核心)的组合时,重新渲染是否存在任何问题?

时间:2020-06-25 06:09:52

标签: reactjs emotion

我认为在下面的代码中使用数组会导致合成中不必要的重新渲染。这是因为React通过较浅的比较重新渲染了组件,在下面的示例中,我们在prop中放置了一个新的数组引用。我说的对吗?

/** @jsx jsx */
import { css, jsx } from '@emotion/core'

const danger = css`
  color: red;
`

const base = css`
  background-color: darkgreen;
  color: turquoise;
`

render(
  <div>
    <div css={base}>This will be turquoise</div>
    <div css={[danger, base]}> // always rerender
      This will be also be turquoise since the base styles
      overwrite the danger styles.
    </div>
    <div css={[base, danger]}>This will be red</div> // always rerender
  </div>
)

0 个答案:

没有答案