首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用材料UI选择器主题扩展资料UI 3主题类型记录定义

如何使用材料UI选择器主题扩展资料UI 3主题类型记录定义
EN

Stack Overflow用户
提问于 2019-02-21 20:00:07
回答 1查看 2K关注 0票数 3

我尝试将Material主题扩展为包含资料-UI-Picker的类型记录类型,用于下列(最新)版本:

代码语言:javascript
复制
"@material-ui/core": "^3.9.2",
"material-ui-pickers": "^2.2.1",

材料UI选择器页面的底部有一个提到,解释说,由于打字稿主题增强,主题可以增强。

委员会建议这样做:

代码语言:javascript
复制
declare module '@material-ui/core/styles/overrides' {
    import { MuiPickersOverrides } from 'material-ui-pickers/typings/overrides'
    export interface Overrides extends MuiPickersOverrides { }
}

但是在Material override.d.ts文件中,Overrides不是一种接口,而是一种类型(因此它不能以这种方式扩展),这使我认为Material类型已经发生了巨大的变化,而资料UI -Pickers指南(和类型)已经过时了。

有关于如何正确扩展主题类型的线索吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-26 16:28:51

找到了解决办法。实际上,MuiPickers使用属性名称->样式规则映射,而最新版本的Material使用属性名称->类名映射。

创建一个包含以下内容的overrides-mui.d.ts文件可以解决这个问题。

代码语言:javascript
复制
import { Overrides } from "@material-ui/core/styles/overrides";
import { MuiPickersOverrides } from 'material-ui-pickers/typings/overrides'

type overridesNameToClassKey = { [P in keyof MuiPickersOverrides]: keyof 
MuiPickersOverrides[P] }

declare module "@material-ui/core/styles/overrides" {
    export interface ComponentNameToClassKey extends overridesNameToClassKey { }
}

只有样式选择器(如&$selected )存在问题。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54815307

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档