繁体   English   中英

JavaScript 中的 StyleFunctionProps(Chakra UI)

[英]StyleFunctionProps in JavaScript (Chakra UI)

我不确定如何在我的 NextJS 项目的 Chakra UI 主题中实现 StyleFunctionProps。 Chakra 文档中的示例是在 Typescript 中编写的,但是,我使用的是 Javascript。我将如何将此示例实现为 Javascript go?

示例(在打字稿中):

import { extendTheme } from '@chakra-ui/react'
import type { StyleFunctionProps } from '@chakra-ui/styled-system'

const theme = extendTheme({
  components: {
    Button: {
      variants: {
        solid: (props: StyleFunctionProps) => ({
          bg: props.colorMode === 'dark' ? 'red.300' : 'red.500',
        }),
      },
    },
  },
})

这与示例中的相同。 您只需要删除键入的导入/注释。

import { extendTheme } from '@chakra-ui/react'

const theme = extendTheme({
  components: {
    Button: {
      variants: {
        solid: (props) => ({
          bg: props.colorMode === 'dark' ? 'red.300' : 'red.500',
        }),
      },
    },
  },
})

另外,你可以解构 props 参数

import { extendTheme } from '@chakra-ui/react'

const theme = extendTheme({
  components: {
    Button: {
      variants: {
        solid: ({colorMode}) => ({
          bg: colorMode === 'dark' ? 'red.300' : 'red.500',
        }),
      },
    },
  },
})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM