javascript - 如何使用根据内容调整大小的 React 进行流畅的文本输入?

标签 javascript html css reactjs

我正在尝试实现此功能: https://paper.fiftythree.com/search

输入框应该根据里面的内容扩展到最大宽度。 我正在使用 Facebook 的 React 通过状态来执行此操作,因此会自动调用渲染。

我已经使用 span 组合了一个 fiddle - 但无法完成: http://jsfiddle.net/abhinavsingi/3az621c2/

var Hello = React.createClass({
                getInitialState: function(){
                    return {
                      name: 'hello'
                    };
                },
                render: function() {
                    return (
                        <div className="cont">
                           <span className="spacer-wrap">
                              <span className="spacer">{this.state.name}</span>
                           </span>
                           <input ref='name' id="nm-inp" className="input-wrap" value={this.state.name} onChange={this.onInputChange}/>
                       </div>
                    );
                },

              onInputChange: function(e){
                   console.log(e);
                   this.setState({name: e.currentTarget.value})
              }
           });      React.render(<Hello name="World" />, document.body);

最佳答案

尝试使用样式;

    render: function() {
            var nameWidth = this.state.name.length + 'em';
            var spacerSty = {width: nameWidth};
            return (
                    <div className="cont">
                         <span className="spacer-wrap">
                                <span className="spacer" style={spacerSty}>{this.state.name}</span>
                         </span>
                         <input ref='name' id="nm-inp" className="input-wrap" value={this.state.name} onChange={this.onInputChange}/>
                 </div>
            );
    },

关于javascript - 如何使用根据内容调整大小的 React 进行流畅的文本输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32602151/

相关文章:

css - RoR Assets 管道生成额外链接

css - 图标不显示语义 UI

javascript - 自动调整缩放以适应谷歌地图中的所有标记

Java 对象作为 Rhino 中的原型(prototype)

javascript - jquery animate() - 如何只移动/动画页面的一部分?

CSS 包裹不同尺寸的 div

javascript - 带有 ASP.NET 的纯 Javascript 应用程序

javascript - 如何将事件监听器添加到第一列的每个单元格?

html - 尝试通过 CSS 将图片居中放置在页面顶部

html - 与相对和绝对定位对齐