如何更改表单控件标签的默认排版类-material-ui |反应?

2024-03-12

我想更改 formControlLabel 的默认属性body to caption。我尝试了一下并且成功了:

<FormControlLabel
  value="all"
  control={<Radio color="primary" />}
  label={
    <Typography variant="caption">
      first
    </Typography>
  }
  labelPlacement="end"
/>

但这并不完全是我想要的效果,在这种情况下,我只添加一个涉及原始跨度的跨度:

有时,我在尝试更改默认元素类时会遇到同样的问题,不幸的是,文档无法帮助我理解在这些情况下应该做什么。

可以找到示例代码和其他失败的尝试here https://stackblitz.com/edit/mb-react-radio.


我只想更改默认类属性MuiTypography-root MuiFormControlLabel-label MuiTypography-body1 to MuiTypography-root MuiFormControlLabel-label MuiTypography-caption不包含新的 span 元素


FormControlLabel does not提供一种控制机制Typography变体。之前已经有人提出过这个问题,并在本期中进行了讨论:https://github.com/mui-org/material-ui/issues/16643 https://github.com/mui-org/material-ui/issues/16643.

您的主要选择是:

  • 将您的文本包裹在自己的文本中Typography与所需的变体(如您在问题中所示)。
  • Use label and Typography直接使用元素代替FormControlLabel模仿其实施 https://github.com/mui-org/material-ui/blob/v4.5.2/packages/material-ui/src/FormControlLabel/FormControlLabel.js#L91
  • 使用 CSS 类来改变body1款式要匹配caption造型(https://github.com/mui-org/material-ui/blob/v4.5.2/packages/material-ui/src/styles/createTypography.js#L73 https://github.com/mui-org/material-ui/blob/v4.5.2/packages/material-ui/src/styles/createTypography.js#L73)

您可以在此示例中并排看到第一个和最后一个选项:

import React from "react";
import ReactDOM from "react-dom";

import FormControlLabel from "@material-ui/core/FormControlLabel";
import Radio from "@material-ui/core/Radio";
import Typography from "@material-ui/core/Typography";
import { makeStyles } from "@material-ui/core/styles";

const useStyles = makeStyles(theme => ({
  label: {
    fontSize: theme.typography.pxToRem(12),
    letterSpacing: "0.03333em",
    lineHeight: 1.66
  }
}));

function App() {
  const classes = useStyles();
  return (
    <>
      <FormControlLabel
        value="all"
        control={<Radio color="primary" />}
        label={<Typography variant="caption">first</Typography>}
        labelPlacement="end"
      />
      <FormControlLabel
        value="all"
        control={<Radio color="primary" />}
        label="first"
        labelPlacement="end"
        classes={classes}
      />
    </>
  );
}

const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);

这两个选项看起来并不完全相同。的线高body1与没有额外的包装层相比,第一种情况下的包装器会导致文本向下移动一两个像素,所以我会推荐我的最后一个选项。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何更改表单控件标签的默认排版类-material-ui |反应? 的相关文章

  • React + 路由器 + Google 标签管理器

    我花了一些时间在 Quickcypher com 上开发 MVP 我想开始进行一些分析 它对于跟踪总访问量非常有用 但是当我尝试跟踪使用 React Router 的网站上的不同 URL 时 情况却出问题了 我的方法是这样的 设置一个在某些
  • DevSettings.reload() 用于 React Native 中的注销

    问题 我正在将混合应用程序的注销功能从本机迁移到反应本机 要求 它可以在生产环境和设备上运行 它导航到应用程序的根屏幕 登录屏幕 它清除 redux 存储 很高兴有 它会取消任何飞行中的请求 最初 我们计划做这样的事情 如何重置 redux
  • 如何在reactjs中重新加载组件(页面的一部分)?

    我当时正在做反应项目 当我们单击重新加载按钮时 我试图重新加载组件 我实现了 onClick 函数 如下所示 但它正在重新加载整个窗口 我只想重新加载该类组件 而不是整个窗口 谁能帮我解决这个问题吗 refreshPage window l
  • Bootstrap 使用 React js 崩溃

    您好 我正在尝试在反应视图中使用引导折叠 但它不起作用 这很简单 但我不明白发生了什么 return div div
  • 如何在 AWS Amplify 上运行 React/Redux 应用程序的代理

    我最近实施了Proxy 在 Express js 中 对于我的反应应用程序发出请求时隐藏 API URL 当我在本地主机上运行代理和应用程序时 它工作得非常好 现在我已准备好将我的应用程序部署到AWS 放大 我对如何让我的代理在那里运行有点
  • useEffect 中的 useState 不更新状态

    我是 React Hooks 新手 正在使用 React 16 13 1 我要实施Auth能够处理登录的组件 但似乎没有更新状态currentUser正确地 尽管setCurrentUser使用响应对象调用 这段代码有什么问题 import
  • SyntaxError:无法在动态导入 Nextjs 的模块外部使用 import 语句

    我遵循了SunEditor的文档 它是这样的 import React from react import dynamic from next dynamic import suneditor dist css suneditor min
  • React hooks 如何确定它们所属的组件?

    我注意到 当我使用反应钩子时 子组件的状态更改不会重新渲染没有状态更改的父组件 通过此代码沙箱可以看到这一点 https codesandbox io s kmx6nqr4o https codesandbox io s kmx6nqr4o
  • 平面列表滚动时响应触摸事件的延迟

    我在反应本机应用程序中使用 FlatList 实现了无限滚动 这个列表是一个轮播列表 可以认为是一个很长的列表 当我滚动列表时 列表外部的触摸事件在单击时没有响应 但在 FlatList 滚动完成时响应 我该如何改进这个 这个问题很难回答
  • React 状态总是从 Fabricjs 的回调中返回先前(或初始)状态

    下面的代码是我的最小问题重现组件 它初始化织物画布 并处理 模式 状态 模式状态决定画布是否可以编辑 并且一个简单的按钮控制该状态 问题是 即使mode setMode工作正常 意思是 单击按钮后组件分析器显示正确的状态 按钮内的文本也显示
  • VSCode 在 React 的 JSX 中错误地格式化三进制

    我正在运行 VSCode 来开发我的 React 应用程序 我有一个简单的三元 isLoading
  • 使用 React Hook Form 和 Yup 进行文件输入验证

    我尝试使用 React Hook Form 进行文件输入验证 是的 我写了下面的代码 但是当我测试文件的大小时 它在这里显示console log value 0 size 即使我在文件输入中选择了一个文件 该值也是未定义的 这有什么问题吗
  • 如何使用 Typescript 设置 Material-UI for React?

    我在将 Material UI 添加到我的 React 项目中时遇到了一些问题 该项目是用 Typescript 编程的 根据教程 我首先添加react tab event plugin import injectTapEventPlugi
  • 从外部material-ui组件访问主题

    我有一个使用标准深色主题的主题提供商 我希望能够从我自己的自定义组件访问该主题的详细信息 但我不知道如何做到这一点 在下面的例子中 this props theme未定义 ReactDOM render
  • 为什么在 ES6 中不应该使用 import all

    所以我最近开始学习 React 并注意到所有文档都有类似的导入 import Apples Bananas Oranges from fruits 但是在研究 React 时我发现这种语法也同样有效 import as Fruits fro
  • 如何将值从孩子的孩子传递给父母?

    我有一个父组件 有一个子组件 它也有一个子组件 Parent Child One child of parent Child Two child of child 当在子二中定义一个值时 我使用回调将该值传递给子一 但我也想将相同的值传递回
  • create-react-app 抛出错误:“package.json 中缺少依赖项”

    所以我尝试运行reactjs官方教程并使用第一行代码 npx create react app react tutorial 我收到以下错误 npx installed 91 in 12 692s Creating a new React
  • 使用 React-navigation 的 React Native 中的模态窗口

    我在用react navigation在 React Native 中 我想在启动时确定用户是否已登录 如果他 她已经登录 我想打开一个模式窗口 全屏 如何最好地做到这一点 我在反应导航文档中找不到有条件显示屏幕的任何内容 看 你需要改变m
  • 如何使用 Firestore 中的对象数组更新 Field 中的特定对象? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 所以我有一个emojiCounter字段用于存储对象数组 例如 emojiCounter emoji
  • 调用axios成功后如何更新页面?反应

    所以我正在做一个使用的项目Axios with Json server 但我有一个问题 每次我做Patch 我必须在主页上按 F5 才能更新 我想知道如何才能做到这一点 这样它就不会自动发生 My Patch onSubmitDate ev

随机推荐

  • 字节顺序、“最高有效”和“最低有效”

    我在网上阅读了描述大端和小端的描述 然而 它们似乎基本上都以相同的方式读取 我仍然对 最多 和 最少 有效字节的实际实现感到困惑 据我了解 小端值首先评估 最低有效 值 而在大端值下 首先评估 最高有效 字节 但是 我不清楚 最 和 最不
  • 为什么类不能用作模块?

    Module是的超类Class Class superclass gt Module 在面向对象编程中 这意味着Class可以在任何有实例的地方使用Module可以使用 令人惊讶的是 情况并非如此ClassRuby 中的实例 class C
  • 使用字符串键访问或创建嵌套 JavaScript 对象而不使用 eval

    我正在寻找一个很好的解决方案来通过字符串值访问属性 但如果该属性不存在 则应该创建它 如果根结构已经定义了该结构的某些部分 则不应覆盖这些属性 而应合并这些属性 例如 如果您有一个空对象test并且您想在不使用 eval 的情况下设置深层结
  • 如何用
    $...$
    替换 LaTeX $...$ 和 $$...$$ 符号?

    我目前遇到的问题是 Jekyll 不能很好地与 Markdown 和 LaTeX 配合使用 所以我有很多文章 frac some latex or int e v en more 我该如何更换 by span span and by div
  • 匹配 ggplot2 中的图例项和颜色,其中某些 geom_segment 未包含在图例中

    我似乎无法让我的图例标签和颜色在 ggplot2 中正确匹配 我有一些 geom segments 我不想包含在图例中 我尝试了各种选择 但没有一个有效 现有的问题似乎都没有涉及未在绘图上标记某些元素的问题 所以这可能会增加复杂性 代码如下
  • 具有来自同一个表的 2 个外键的 Django 模型

    我想要一个带有来自同一个表的 2 个外键的 Django 模型 这是一个事件表 有两列员工 参与者 和 接收者 但我收到这个错误 错误 一个或多个模型未验证 tasks task 中介 模型 TaskEvent 有多个 Employee 外
  • Tcl.h:没有这样的文件或目录

    我正在尝试将一些代码从 Solaris 机器移植到 Linux 特别是 Redhat 机器上 代码编译没有问题 并且在 Solaris 机器上运行也没有问题 然而 在 Linux 上重新编译时 我遇到了 tcl h 的问题 编译器告诉我 e
  • JCL TEvaluator 类中预定义了哪些函数

    有谁知道其中包含哪些预定义功能 例如 ABS 功能 TEvaluatorDelphi 7 的 JCL 类 没有任何标准功能Math pas包括 默认评估解析器中实现的所有内容都是运算符or xor and not mod lt gt lt
  • 使用 python 3 抓取需要登录的网站

    只是一个关于一些抓取身份验证的问题 使用BeautifulSoup importing the requests lib import requests from bs4 import BeautifulSoup specifying th
  • 如何通过CSS将鼠标悬停在导航菜单上来隐藏和显示Bootstrap 4卡片?

    您好 我试图通过将鼠标悬停在菜单列表上来显示和隐藏卡片的特定部分 我可以使用 css 隐藏卡片 但无法通过特定类的 css 的 display block 属性来显示它 HTML 导航菜单 div class d flex justify
  • ctags 和 Fortran 的接口

    我想知道如何让 ctags 使用 Fortran 中的接口 例如 INTERFACE SOME ROUTINE MODULE SOME ROUTINE A MODULE SOME ROUTINE B END SOME ROUTINE 因此
  • 将数据从钩子传递到 codeigniter 中的视图

    我可以将数据从钩子传递到视图吗 如果可能 请解释一下 例如 hook post controller constructor array class gt Varify user function gt user project filen
  • NUnit Assert.Equals 我错过了什么?

    Assert Equals 从不调用 Equals operator operator 我错过了什么吗 我已经实现了 IEquatable 但在使用 nunit 时仍然从未调用这些方法 if objectA objectB Assert F
  • 为什么 C++17 结构化绑定不使用 { }?

    我找到了 C 结构化绑定的原始提案here http www open std org jtc1 sc22 wg21 docs papers 2015 p0144r0 pdf 它提出了一种轻松绑定多个返回值的方法 即 auto a b mi
  • asp .net 验证在 IE 10 中不起作用

    有人遇到过这个问题吗 我需要对一个表单进行字段验证 我已经测试过该表单 并且知道它可以在 IE 7 9 Firefox 和 Chrome 中工作 但在 IE 10 中 它允许在不进行任何验证的情况下提交表单 该网站采用 Net 3 5 我在
  • 更新 mongo 中的字段类型

    我有大量记录collection field value 我怎样才能有效地更新到 字段 值 我尝试过这样的事情 pymongo 语法 collection update field 1 exists True set field field
  • wso2 调用 API 时无需令牌

    我正在使用 WSO2 API Mananger 管理我的 API 到目前为止 每个 API 都是私有的 并且可以使用访问令牌进行访问 新用例中的一些 API 是完全公开的 任何人都可以匿名访问它们 只需 GET POST PUT 即可 无需
  • 确定“未知的评估顺序”

    从版本 1 80 开始 Cppcheck 告诉我 表达式 msg ipos checksum msg 1 ipos 1 取决于副作用的评估顺序 在此代码序列中 简化 data是一个变量 BYTE msg MAX MSG SIZE msg c
  • excel函数获取另一个单元格的值

    描述问题的图片http img215 imageshack us img215 3725 20100314235127schedule2 jpg http img215 imageshack us img215 3725 201003142
  • 如何更改表单控件标签的默认排版类-material-ui |反应?

    我想更改 formControlLabel 的默认属性body to caption 我尝试了一下并且成功了