reactjs - Material-UI Core TextField 全局设置 InputLabelProps 收缩
问题描述
有谁知道如何使用 Material-UI 文本字段(或输入,如果我需要使用它)全局覆盖标签的收缩?
我不想到处添加这个:
...
InputLabelProps={{
shrink: true,
}}
但我似乎无法找出正确的覆盖createMuiTheme
。
我试过shrink: true
在这里添加
overrides: {
MuiInput: { ...
和这里
overrides: {
MuiInputLabel: { ...
但我无法让它工作。
如果有人可以将我的文档/代码指向他们发现这一点的地方,那就太棒了!
谢谢
解决方案
澄清一下,在版本 1(及更高版本)中,主题覆盖允许您自定义组件的样式,而不是道具。这种方法更强大,因为它可以让您完全控制所有 Material UI 样式。
在这种情况下,您需要修改每个 TextField 变体的样式,以便默认应用收缩样式(请参阅实现)
正如 Alireza 建议的那样,最好的解决方案是创建组件的自定义变体。这是一个例子:
import TextField from "@material-ui/core/TextField";
function CustomTextField({ InputLabelProps = {}, ...props }) {
return (
<TextField
InputLabelProps={{ ...InputLabelProps, shrink: true }}
{...props}
/>
);
}
推荐阅读
- python - 模糊 C 均值中的 ValidationError
- php - 使用 PHP 在 Apache 或 NGINX 上配置 HSTS
- tcl - Tcl 将标准输出重定向到文件不产生输出
- javascript - 使用 javascript 和 laravel 从输入中获取值
- flutter - 在 Flutter 中使用 TextField 构建带有语法高亮的代码编辑器
- laravel - 带有josn资源的laravel livewire问题
- wso2 - WSO2 API Manager 3.2 禁用访问令牌
- javascript - Statsig - 如何从特征门获得真实价值?
- c++ - undefined reference to `Account::set_balance(double)' ----这是什么意思?
- google-sheets - 您如何将网站中的一行中的一列放入 Google 工作表中