我想将我的 JavaScript 函数文档分成 TypeScript .d.ts 文件。
例如:
components/
Button/
Button.jsx # JavaScript component
Button.d.ts # TypeScript documentation with prop types
同样,Material UI 是如何做到这一点的。https://github.com/mui-org/material-ui/tree/master/packages/material-ui/src/Button
我的问题是 TypeScript 和 VSCode 无法识别.d.ts
当前 JavaScript 文件的文件。
在我的设置中,我有以下Button.d.ts
文件:
interface Props {
text: string
onClick: () => void
}
declare const Button: (props: Props) => Element
export default Button
和以下Button.jsx
文件:
import React from 'react'
const Button = ({ text, onClick }) => {
return <button onClick={onClick}>{text}</button>
}
export default Button
但是 VSCode 无法识别组件中的 prop 类型:
如何设置我的项目(可能是 tsconfig.json 文件)以接受使用相应的 .d.ts 文件?
我当前的 tsconfig.json 配置:
{
"compilerOptions": {
"declaration": true,
"rootDir": "./src",
"allowJs": true,
"allowSyntheticDefaultImports": true,
"isolatedModules": true,
"noEmit": true,
"maxNodeModuleJsDepth": 2
},
"include": ["src/**/*"]
}