从另一个接口扩展-MUI

时间:2020-05-21 22:18:52

标签: javascript reactjs typescript material-ui eslint

我有一个界面

interface ThemeBase {
  colors: {
    [key: string]: Color;
  };
  borderRadius: {
    base: string;
    mobile: string;
  };
  navbar: {
    'z-index': number;
  };
  typography: {
    rootBase: string;
    fontBase: string;
  };
}

我想通过此界面扩展MUI主题。 此解决方案对我有用:

declare module '@material-ui/core/styles/createMuiTheme' {
  interface Theme extends ThemeBase {}
  // allow configuration using `createMuiTheme`
  interface ThemeOptions extends ThemeBase {}
}

但是我有eslint错误

错误声明没有成员的接口与其接口等效 超型@ typescript-eslint / no-empty-interface

如何在不重复编写主题和主题选项的情况下解决此问题

1 个答案:

答案 0 :(得分:2)

这是在IMO中只需将/* eslint-ignore @typescript-eslint/no-empty-interface */放在第一行的例子,这是少数几个例子之一。虽然我不会在常规代码中做到这一点,但是模块增强有点不同,但是在这里寻找解决方法没有任何意义。