簡體   English   中英

如何解決反應材料 ui 錯誤

[英]How can i resolve the react material ui error

import { AppBar, Toolbar, Typography } from '@material-ui/core'
import React from 'react'
import { makeStyles } from '@material-ui/styles';

const drawerWidth = 240;
const useStyles = makeStyles((theme) => {
    return {
        appBar: {
            width: `calc(100% - ${drawerWidth}px)`,
        },
}});



function Dashboard() {
    const classes = useStyles();
    return (
        <div>
            <AppBar >
                <Toolbar>
                    <Typography>Dashboard 1</Typography>
                </Toolbar>
            </AppBar>
        </div>
    )
}

export default Dashboard

錯誤 - 未捕獲的錯誤:無效的掛鈎調用。 鈎子只能在 function 組件的主體內部調用。 這可能由於以下原因之一而發生:

  1. 你可能有不匹配的 React 版本和渲染器(例如 React DOM)
  2. 您可能違反了 Hooks 規則
  3. 你可能在同一個應用程序中擁有多個 React 副本

任何人都可以幫助解決這個問題

也許你對使用 Material-UI 4 和 5 之間的版本感到困惑。

但是您使用的是版本4

您應該從@material-ui/core@material-ui/core/styles導入makeStyles而不是從@material-ui/styles

import { makeStyles } from '@material-ui/core/styles';

參考這個。 https://v4.mui.com/styles/api/#makestyles-styles-options-hook

嘗試更改您的導入並添加createStyles調用:

import { makeStyles, createStyles } from '@material-ui/core';

const drawerWidth = 240;
const useStyles = makeStyles((theme) => {
  createStyles({
    appBar: {
      width: `calc(100% - ${drawerWidth}px)`,
    },
  });
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM