簡體   English   中英

為什么我的底部子組件顯示在頁面頂部?

[英]Why my bottom sub-component is shown on top of a page?

我創建了一個沙箱環境來顯示問題。

基本上,問題是當我在主菜單中單擊“選項1”時,出現一個新組件,其中一個底部子組件(稱為BottomControls.js )顯示在頁面頂部而不是頁面底部。

而且CardContent是白色的,而不是CardContentbackgroundColor: 'rgb(225, 0, 80)' styles.js backgroundColor: 'rgb(225, 0, 80)'

似乎在BottomControls.js錯誤地應用了BottomControls.js 我通過樣式作為參數傳遞給BottomControls.js從父組件Main.js

有人知道我在做什么錯嗎?

如何使用樣式存在兩個主要問題:

  • 您沒有從./layout/single/styles.js導出任何./layout/single/styles.js
  • 您沒有使用withStyles將JS對象轉換為可以使用的CSS類

這是一個CodeSandbox,可解決這些主要問題:

編輯1z9qk10rj4

Main.js更改:

// added
import { withStyles } from "@material-ui/core/styles";

更改了export default class extends Componentclass Main extends Component

// added to end of Main.js
const StyledMain = withStyles(styles)(Main);
export default StyledMain;

mystyles={styles}mystyles={styles}更改為mystyles={this.props.classes} (prop的classeswithStyles注入)。

然后在styles.js添加了export default styles; 至底部。

暫無
暫無

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

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