Skip to content

Instantly share code, notes, and snippets.

@maisnamraju
Created May 3, 2015 17:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save maisnamraju/7b1bf7af97ee7b5bb46d to your computer and use it in GitHub Desktop.
Save maisnamraju/7b1bf7af97ee7b5bb46d to your computer and use it in GitHub Desktop.
ReactJS doubt
class Header extends React.Component{
constructor(props, context) {
super(props);
}
toggleAdvancedSearch() {
React.render(
<AdvancedSearch />, document.getElementById('advanced-widget'));
}
search() {
SearchActions.Search();
}
render() {
var Toolbar = mui.Toolbar;
var ToolbarGroup = mui.ToolbarGroup;
var DropDownMenu = mui.DropDownMenu;
var DropDownIcon = mui.DropDownIcon;
var RaisedButton = mui.RaisedButton;
var TextField = mui.TextField;
var IconButton = mui.IconButton;
var FlatButton = mui.FlatButton;
var FontIcon = mui.FontIcon;
var DatePicker = mui.DatePicker;
return(
<header>
<div className="mui-search-bar">
<div id="search-block">
<TextField hintText="02360" floatingLabelText="Enter Zip Code. Eg 02360" />
<IconButton className="fa fa-search" id="search-btn" onClick={this.search}/>
</div>
<span id="advanced-btn" onClick={this.toggleAdvancedSearch} >
Advanced <i className="fa fa-caret-down"></i>
</span>
</div>
</header>
);
}
}
@hetmann
Copy link

hetmann commented May 3, 2015

class Header extends React.Component{

  constructor(props, context) {
    super(props);
    this.state({
      showAdvancedSearch: false
    })
  }

  toggleAdvancedSearch() {
    var searchContainer = document.querySelector("body #advanced-widget"); // can use any css selector: class / tag / etc.

    React.render(
      (!this.state.showAdvancedSearch ? <AdvancedSearch /> : null),
        searchContainer
    );

    this.setState({
      showAdvancedSearch: !this.state.showAdvancedSearch // Set the reverse state for showAdvancedSearch
    });
  }  

  handleSearch() {
    return SearchActions.Search();        
  }

  render() {
    var Toolbar = mui.Toolbar,
        ToolbarGroup = mui.ToolbarGroup,
        DropDownMenu = mui.DropDownMenu,
        DropDownIcon = mui.DropDownIcon,
        RaisedButton = mui.RaisedButton,
        TextField = mui.TextField,
        IconButton = mui.IconButton,
        FlatButton = mui.FlatButton,
        FontIcon = mui.FontIcon,
        DatePicker = mui.DatePicker;

    return(
      <header>
        <div className="mui-search-bar">
          <div id="search-block"> 
            <TextField hintText="02360" floatingLabelText="Enter Zip Code. Eg 02360" />
            <IconButton className="fa fa-search" id="search-btn" onClick={this.handleSearch}/>
          </div>       
          <span id="advanced-btn" onClick={this.toggleAdvancedSearch} >
            Advanced <i className="fa fa-caret-down"></i>
          </span>
        </div>            
      </header>
    );
  }

}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment