質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Material-UI

Material-UIは、Material Designを利用可能なオープンソースのReact向けUIコンポーネントキットです。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

Q&A

解決済

2回答

834閲覧

【React】Material-UIのボタンに設定した色が消えてしまう

teto_plw

総合スコア57

Material-UI

Material-UIは、Material Designを利用可能なオープンソースのReact向けUIコンポーネントキットです。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

0グッド

0クリップ

投稿2022/09/05 09:00

前提

React+Material-UIでプロジェクトを作成中。

実現したいこと

エラー?をなくしたい。

発生している問題・エラーメッセージ

ビルドして本番環境でページを開いた際、Material-UIで作成したボタンの色が一瞬で消えてしまう(色を設定しているのに白になってしまう)
※Chromeのみ、Safari、FireFoxでは上記は起こらない。Chromeでもエラーを吐いているわけではない。

該当のソースコード

jsx

1 2const theme = createTheme({ 3 palette: { 4 gold: { 5 main: "#c6ad23", 6 contrastText: "#ffffff", 7 }, 8 }, 9}); 10 11---------- 12 13<ThemeProvider theme={theme}> 14 <div className="buttons"> 15 <Button 16 variant="contained" 17 color="gold" 18 onClick={() => "CLICK_EVENT"} 19 > 20 Choose gold 21 </Button> 22 </div> 23</ThemeProvider> 24 25<Button 26 variant="contained" 27 onClick={() => setTexture(ooshima)} 28> 29 Button 30</Button> 31

補足情報(FW/ツールのバージョンなど)

"@emotion/react": "^11.10.4", "@emotion/styled": "^11.10.4", "@mui/material": "^5.10.3", "@testing-library/jest-dom": "^5.16.5", "@testing-library/react": "^13.3.0", "@testing-library/user-event": "^13.5.0", "react": "^18.2.0", "react-colorful": "^5.6.1", "react-dom": "^18.2.0", "react-scripts": "5.0.1", "styled-components": "^5.3.5",

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

Chromeの拡張機能が干渉していました。

投稿2022/09/10 08:47

teto_plw

総合スコア57

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

もうすでにPaletteOptionsを拡張しておりましたらすみません。

元々用意されているPaletteOptions外のカラーを設定する場合は、PaletteOptionsを拡張しないと対応しません。

JSX

1 2declare module "@mui/material/styles" { 3 interface PaletteOptions { 4 gold?: PaletteColorOptions; 5 } 6 interface Palette { 7 gold: PaletteColor; 8 } 9} 10 11const theme = createTheme({ 12 palette: { 13 gold: { 14 main: "#c6ad23", 15 contrastText: "#ffffff", 16 }, 17 }, 18}); 19 20---------- 21 22<ThemeProvider theme={theme}> 23 <div className="buttons"> 24 <Button 25 variant="contained" 26 color="gold" 27 onClick={() => "CLICK_EVENT"} 28 > 29 Choose gold 30 </Button> 31 </div> 32</ThemeProvider> 33 34<Button 35 variant="contained" 36 onClick={() => setTexture(ooshima)} 37> 38 Button 39</Button>

こちらで挙動はいかがでしょうか?

投稿2022/09/06 06:05

nomari

総合スコア94

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

teto_plw

2022/09/09 15:06

ご回答ありがとうございました。原因を切り分けたらどうやらPaletteOptionsではありませんでした。 もう少しシンプルにしたものを再質問させていただいたので、よかったらこちらも見ていただけるとありがたいです。 https://teratail.com/questions/e1chozjbhe4y9s
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問