MaterialUI 대화 상자의 크기를 콘텐츠에 맞게 늘리거나
11053 단어 material-ui
예를 들어 대화.
콘텐츠의 크기보다 크게 표시됩니다.
이런 저장 확인 대화상자를 표시하려고 했을 경우.
dialog.tsx
<Dialog
title="保存します"
open={true}
onRequestClose={()=>this.handleCloseConfirm()}
actions={[
<FlatButton
label="キャンセル"
onTouchTap={()=>this.handleCloseConfirm()}/>,
<FlatButton
label="保存"
primary={true}
keyboardFocused={true}
onTouchTap={()=>this.handleSave()}/>,
]}>
<TextField floatingLabelText="タイトル"
onChange={(e)=>this.handleChangeTitle(e)}/>
</Dialog>
아, 긴. 길다.
아래와 같이
contentStyle
속성으로 직접 폭·높이를 지정한다, 라고 하는 방법도 해결 방법의 하나로서는 있습니다만.dialog.tsx
<Dialog
title="保存します"
open={true}
onRequestClose={()=>this.handleCloseConfirm()}
contentStyle={{width: '350px'}}
actions={[
<FlatButton
label="キャンセル"
onTouchTap={()=>this.handleCloseConfirm()}/>,
<FlatButton
label="保存"
primary={true}
keyboardFocused={true}
onTouchTap={()=>this.handleSave()}/>,
]}>
<TextField floatingLabelText="タイトル"
onChange={(e)=>this.handleChangeTitle(e)}/>
</Dialog>
대화가 나타날 때마다 지정합니까? 콘텐츠가 가변적이면 어떻게 해야 하나요? 라는 문제들에 부딪칩니다.
Redux에서 능숙한 것 다이얼로그의 표시 처리 자체를 집약해 컨텐츠만 바꾸고 싶다고 하는 경우는 더욱더군요.
생각하지 않은 끝에 짜낸 소기술이 이쪽.
position:fixed
에 의해 좌표 지정으로 배치되어 있는 다이얼로그를 무리하게 .flexbox
지정하지 않으면 안되는 것이 매우 유감입니다만 개인적으로는 매우 편리합니다.물론 표시 위치는 window의 리사이즈 이벤트에도 추종해요.
app.sass
.dialog, .dialog-content
// 勝手にflexbox化
display: flex !important
justify-content: center !important
align-items: center !important
// position:fixed時の配置情報をリセット
padding-top: 0px !important
transform: initial !important
dialog.tsx
<Dialog
title="保存します"
open={true}
onRequestClose={()=>this.handleCloseConfirm()}
className="dialog"
contentClassName="dialog-content"
actions={[
<FlatButton
label="キャンセル"
onTouchTap={()=>this.handleCloseConfirm()}/>,
<FlatButton
label="保存"
primary={true}
keyboardFocused={true}
onTouchTap={()=>this.handleSave()}/>,
]}>
<TextField floatingLabelText="タイトル"
onChange={(e)=>this.handleChangeTitle(e)}/>
</Dialog>
Reference
이 문제에 관하여(MaterialUI 대화 상자의 크기를 콘텐츠에 맞게 늘리거나), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/shitake/items/213ba948729f39d133fa텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)