React 用input和datalist写的下拉框

效果如图所示:


输入会有提示


代码如下:

class Suggest extends React.Component{
  getValue(){
    return this.refs.lowlevelinput.valaue;
  }
  render(){
    const randomid=Math.random().toString(16).substring(2);
    return (
     <div>
       <input 
         list={randomid}
         defaultValue={this.props.defaultValue}
         ref='lowlevelinput'
         id={this.props.id}
         />  
        <datalist id={randomid}>
        {this.props.options.map((item,idx)=>
           <option value={item} key={idx}/>
         )}</datalist>
     </div>
    );
  }
}

ReactDOM.render(
  <div>
    <Suggest options={['esd','feff','fsf','fdsg','ghg']}/>
  </div>,document.getElementById('app')
);

相关文章

react 中的高阶组件主要是对于 hooks 之前的类组件来说的,如...
我们上一节了解了组件的更新机制,但是只是停留在表层上,例...
我们上一节了解了 react 的虚拟 dom 的格式,如何把虚拟 dom...
react 本身提供了克隆组件的方法,但是平时开发中可能很少使...
mobx 是一个简单可扩展的状态管理库,中文官网链接。小编在接...
我们在平常的开发中不可避免的会有很多列表渲染逻辑,在 pc ...