小编Ali*_*adi的帖子

如何在 Material UI 选项卡中拥有多个行选项卡

我在 Material UI 选项卡中有近 30 个选项卡,用户必须滚动两次才能看到所有选项卡,我想用滚动显示两行选项卡,而不是用滚动显示一行,这将帮助用户看到大多数选项卡选项卡一目了然。
我怎样才能做这样的事情?,我查看了Material UI文档,但找不到任何有用的东西,我尝试手动给它赋予CSS样式,但我无法实现我的目标(我的CSS技能很平庸)。
为了说明我的意思multiple row tabs,这里有一个示例图像:
在此输入图像描述
任何帮助深表感谢。

css tabs reactjs material-ui

6
推荐指数
1
解决办法
6113
查看次数

如何提高 Material UI 的整体动画速度

我怎样才能提高整体动画速度Material UI,例如里面有一个drawer组件material UI,它可以打开或关闭,我怎样才能提高动画速度?
更好的是我怎样才能提高所有动画速度material UI

reactjs material-ui

3
推荐指数
1
解决办法
3531
查看次数

Material UI TextField 边框与 Label 重叠

我正在使用 Material UITextField和 Material UI Tab。我有两个选项卡,每个选项卡内都有一个文本字段。单击 后TextField,标签的边框应该打开,但如果当前Tab不是Tab1!! ,则不会发生这种情况。

我设法在此 CodeSandBox中重现此问题,代码也包含在下面。

import React from "react";
import PropTypes from "prop-types";
import { makeStyles } from "@material-ui/core/styles";
import AppBar from "@material-ui/core/AppBar";
import Tabs from "@material-ui/core/Tabs";
import Tab from "@material-ui/core/Tab";
import Typography from "@material-ui/core/Typography";
import Box from "@material-ui/core/Box";
import TextField from "@material-ui/core/TextField";

function TabPanel(props) {
  const { children, value, index, ...other } = props;

  return (
    <Typography
      component="div"
      role="tabpanel"
      hidden={value !== index}
      id={`scrollable-force-tabpanel-${index}`} …
Run Code Online (Sandbox Code Playgroud)

css reactjs material-ui

3
推荐指数
2
解决办法
7419
查看次数

我应该手动将函数传递给我的组件还是使用 ref 属性?

我已经构建了自己的FormBuilder组件(5k现在几乎是一行),因此它可以满足我的所有需求,我遇到的一个问题是FormData在用户需要的任何时间加载一组新组件,因为我FormBuilder可以接受一组嵌套组件,比较这些更改有点困难,并且处理组件中的所有内容确实挂载了,一个简单的方法是在组件loadFormData内部构建一个方法FormBuilder并从组件外部调用此方法
我知道这可以很容易地使用ref attribute,但反应强烈建议避免这种情况,我得到了灰心!我不确定我是否应该这样做!
所以我想出了一个新的替代方案,它有点做同样的事情:

class A {

    onGetFormBuilderInternalFunction = (functions) => {
        this.formBuilderFunctions = functions
    }

    onLoadButtonClick = () => {        
      this.formBuilderFunctions.loadFormData(someNewData)
    }

    render () {
        <FormBuilder onGetInternalFunction={this.onGetFormBuilderInternalFunction}
    }
}


class FormBuilder {
    componentDidMount() {
        if (this.props.onGetInternalFunction) {
            this.props.onGetInternalFunction({
                loadFormData: this.loadFormData,
            })
        }
    }
}  
Run Code Online (Sandbox Code Playgroud)

那么你怎么看?,这是更好的方法吗?还是这仍然很糟糕?,我在想使用这种方法至少只能访问我需要的功能,而不能访问其他所有功能。
我还应该提到,loadFormData这只是一个例子,至少有几个special function我真的认为最好从外部调用,所以即使我以某种方式从 props 传递新数据并处理它componentDidUpdate,对于其余的这些功能,我仍然需要访问FormBuilder

javascript design-patterns reactjs

3
推荐指数
1
解决办法
197
查看次数

使用map作为for循环而不返回可以吗

我在项目中到处使用 map ,即使我不想返回任何东西,我只是使用{}而不是()并且不返回任何东西,只是像 a 一样使用它for loop,这样可以吗?如果是,那么不使用任何键怎么样?因为我有时并不真正使用地图内的元素,我什至不需要(或知道如何)使用键!
这是我从代码中复制的示例:

rawElementList.map(element => {
    if (element.validation !== undefined) {                 
        if (JavascriptUtils.hasOwnProperty(element.validation, 'isRequired')) {
            const isRequired = element.validation.isRequired;

            if (isRequired !== undefined) {
                delete element.validation.isRequired;
                required.push(String(element.id))
            }
        }

        validationJsonList.properties[element.id] = element.validation;
    }
})
Run Code Online (Sandbox Code Playgroud)

javascript reactjs

2
推荐指数
1
解决办法
1444
查看次数

标签 统计

reactjs ×5

material-ui ×3

css ×2

javascript ×2

design-patterns ×1

tabs ×1