在包装器组件中继承 autocomplete/suggestion proptypes
Inherit autocomplete/suggestion proptypes in wrapper component
我正在围绕一个 chakraui 组件创建我自己的自定义“包装器”,这样我就可以添加我自己的道具、方法以及我以后可能需要的任何东西。
然而,这样做的一个缺点是我在 Visual Studio 代码中没有得到关于导入的 chakraui-Button 属性类型的建议,只有新的属性类型“testPropColor”。其他属性仍然有效,但是否有任何方法可以将它们进一步向下传递,以便我也可以将它们视为建议?
我有的是:
custom-component/button.js
import { Button as ChakraButton } from '@chakra-ui/react'
export default function Button(properties) {
const { testPropColor, children, ...props } = properties
return (
<ChakraButton color="testPropColor" {...props}>
{children}
</ChakraButton>
)
}
以及我如何在视图中使用它:
import Button from 'custom-component/Button'
export default function ViewComponent() {
return (
<Button
bg="red"
testPropColor="blue">Test</Button>
)
}
Javascript 没有 type
支持。所以 VSCode.
中没有 type
-intellisense
我高度 highly highly 建议将 TypeScript
添加到你的 JS React项目。
例如:
interface ButtonProps extends ChakraButton {
// you need to get the `ChakraButton` properties type, from '@chakra-ui/react'.
// You should be able to import it.
testPropColor: string;
bg: string;
}
export function Button(properties: ButtonProps) {
}
只是我找到的一篇快速文章,例如 here。
如果出于某种原因您不添加 TS(?!。您真的应该添加)-> 那么有 prop-types,但与 TS 相比,我不建议使用它。
import PropTypes from 'prop-types';
祝你好运
我正在围绕一个 chakraui 组件创建我自己的自定义“包装器”,这样我就可以添加我自己的道具、方法以及我以后可能需要的任何东西。
然而,这样做的一个缺点是我在 Visual Studio 代码中没有得到关于导入的 chakraui-Button 属性类型的建议,只有新的属性类型“testPropColor”。其他属性仍然有效,但是否有任何方法可以将它们进一步向下传递,以便我也可以将它们视为建议?
我有的是: custom-component/button.js
import { Button as ChakraButton } from '@chakra-ui/react'
export default function Button(properties) {
const { testPropColor, children, ...props } = properties
return (
<ChakraButton color="testPropColor" {...props}>
{children}
</ChakraButton>
)
}
以及我如何在视图中使用它:
import Button from 'custom-component/Button'
export default function ViewComponent() {
return (
<Button
bg="red"
testPropColor="blue">Test</Button>
)
}
Javascript 没有 type
支持。所以 VSCode.
type
-intellisense
我高度 highly highly 建议将 TypeScript
添加到你的 JS React项目。
例如:
interface ButtonProps extends ChakraButton {
// you need to get the `ChakraButton` properties type, from '@chakra-ui/react'.
// You should be able to import it.
testPropColor: string;
bg: string;
}
export function Button(properties: ButtonProps) {
}
只是我找到的一篇快速文章,例如 here。
如果出于某种原因您不添加 TS(?!。您真的应该添加)-> 那么有 prop-types,但与 TS 相比,我不建议使用它。
import PropTypes from 'prop-types';
祝你好运