亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

material-ui里面的withStyles是什么?

material-ui里面的withStyles是什么?

滄海一幻覺 2019-02-25 13:23:07
https://github.com/mui-org/ma...export default withStyles(styles, { name: 'MuiAppBar' })(AppBar); //這里的作用是什么?
查看完整描述

2 回答

?
胡說叔叔

TA貢獻1804條經驗 獲得超8個贊

withStyles 是一個 HOC 組件,會為你的 AppBar 組件根據當前的 theme 來添加樣式。核心功能就是為子組件提供了一個 classes props,這樣你就可以在外部對 class name 進行修改。

在你這個例子中,就會將第一個參數 styles 的樣式,覆蓋掉原來主題中的 MuiAppBar 樣式。


查看完整回答
反對 回復 2019-03-06
?
繁星coding

TA貢獻1797條經驗 獲得超4個贊

樓上的回答是正確的,不過利于理解,先說下 Material-UI 中默認支持的樣式吧,使用的是 CSS-In-JS 方案,也就是 JSS, 而你寫的樣式都是 Object, 所以,需要把你的對象 JSS to classes,就是 JSS 利用你的 object 生成樣式,并且把所有的 classnames 成為一個對象為 classes 通過 props 傳遞給你的下一級組件。

const styles = { root: { width: '100%' } };

-> CSS :

ComponentName-root_0 { width: 100%; };

-> classes

const classes = { root: 'ComponentName-root_0' };

withStyles(stypes) 步驟完成你的完整代碼是:withStyles(stypes)(Component) 如下(withStyles(stypes) 代碼如下):

return (Component) => (props) => (<Component {...props} classes={classes} />);

現在明白了吧?


查看完整回答
反對 回復 2019-03-06
  • 2 回答
  • 0 關注
  • 1422 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號