2017-10-21 186 views
1

我想創造這樣的事情材料UI字段選擇器

alt text

所以我可以域之間進行選擇,怎麼可能建立在物質的UI這樣的事情?

+0

是的。但我認爲你並沒有真正問這個問題。如果你問的是如何,堆棧溢出會變得太寬泛。如果你問的是哪裏得到一個這樣做的組件,它也是主題。所以不幸的是,你的問題在這裏似乎並不合適,但至少要編輯它來包含你的問題的更多細節,如果「是」不足以回答它的話。 –

+0

@SamiKuhmonen,我讀過MateriaUi文檔沒有找到如何創建這樣的東西。 也許我錯過了什麼。 – Taieb

回答

0

爲每個按鈕創建一個組件,併爲其指定一個className,它定義背景顏色,如圖像上的未標記背景顏色。 className應該是state財產。

之後在onClick之後將state屬性更改爲具有紅色背景的css類。

例如:

class Button extends React.Component { 
    constructor(props) { 
     super(props); 
     this.state = {buttonDesign: "not-selected"}; 
     this.handleClick = this.handleClick.bind(this); 
    } 

    handleClick() { 
     if (this.state.buttonDesign == "selected"){ 
      this.setState({ 
      buttonDesign: "not-selected" 
      }); 
     } 
     else if (this.state.buttonDesign == "not-selected"){ 
      this.setState({ 
      buttonDesign: "selected" 
      }); 
     } 
     } 
    }; 

    render() { 
     return(
      <button className={this.state.buttonDesign} onClick={this.handleClick}> 
       "your button name" 
      </button> 
     ); 
    } 
} 

,並在你的CSS文件,你應該有這樣的事情:

.not-selected { 
    background-color : #ff9191; // or your color 
} 
.selected{ 
    background-color: #ff0000; // or your color 
} 

而你也需要一些邏輯來跟蹤哪些已經被選中。

+0

有沒有辦法做到這一點靜態? – Taieb

+0

你是什麼意思? – Goran

+0

只需使用Material-ui和芯片組件。 我知道我要使用的所有數據,所以我想把它們放在一個數組中,並顯示它們,所以我可以在它們之間進行選擇。 – Taieb