- 场景是这样的
index.ts
import { Checkbox, Table, message } from 'antd'
但是我希望 开发者不要使用antd的message,我希望使用message时编辑器提示为null。
- 我的方案:
写了一个声明文件,antd.d.ts~~~~
写法一,ts报错 且 index.ts 无覆盖变化
import 'antd'
declare module 'antd' {
export const message: null // 后续变量声明必须属于同一类型。变量“message”必须属于类型“MessageApi”,但此处却为类型“null”~~~~
}
写法二,
declare module 'antd' {
export const message: null
}
在index.ts 虽然提示message为null了,但是antd其他声明~~也被覆盖了~~
import { Checkbox, Table, message } from 'antd' // 模块“"antd"”没有导出的成员“Checkbox”
怎么样可以达到预期(上面黑体加粗)
eslint 配置以下规则: