2017-11-17 13 views
-4

次の反応コンポーネントを作成し、入力ボックスに非表示を追加しようとしています。入力タグ内に状態を表示する方法

class FontChooser extends React.Component { 

constructor(props) { 
super(props); 
this.state={display:'hidden'}; 
} 


render() { 

return(
     <div> 
      <input type="checkbox" id="boldCheckbox" this.state.display />   
     </div> 
); 
} 
} 

Iはまた、{this.state.display}を試みたが、私は、入力type属性の使用予期しないトークン

+0

これは意味をなさないものです。もっと詳しく説明できますか? – DCR

+0

"入力ボックスに非表示を追加しようとしています。" ?!?!?何がこの質問は私の友人..申し訳ありませんが、意味はありません。 –

+0

隠し入力を行う真の方法は、[type = hidden'を設定することです(https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/hidden)。他のすべての答えは要素を隠すCSSルールだけであり、隠し要素にはしません。 –

答えて

-1

得る:styleを使用

<input type="text" type={this.state.display} /> 

<input type="text" style={{...this.state}} /> 

状態オブジェクト内のdisplay: hiddendisplay: noneを変更してください。

-1

displayvisibilityに置き換えるか、hiddennoneに置き換えます。

{display: 'none'}または{visibility: 'hidden'}のいずれかです。

@Linasの回答が有効です。私は意味:

<input type="text" style={this.state} /> 

または

<input type="text" style={{...this.state}} /> 

どちらも同じレンダリング。

0

あなたは、特にあなたのコードに若干の変更をしなければならない...私はそれはあなたが求めているものだと信じている、<input type="checkbox" id="boldCheckbox" hidden />ようなあなたのコードで表示するには、タグの小道具としてhiddenが必要な場合:

constructor(props) { 
    super(props); 
    this.state = { 
    display: { 
     hidden: undefined 
    } 
    }; 
} 


render() { 
    return (
    <div> 
     <input type="checkbox" id="boldCheckbox" {...this.state.display} /> 
    </div> 
) 
} 

displayの下にあるhiddenの状態を非表示にするには、nullまたはundefined以外に設定します。

So:this.setState({display: { hidden: <STATECHANGE>}})

関連する問題