2015-01-14 19 views
7

Ho un tag di input e sto cercando di impostare il contenuto del segnaposto sugli oggetti del componente. Dopo aver compilato JSX e averlo eseguito nel browser, il segnaposto non viene visualizzato. Inoltre, non genera errori. Come posso fare questo?React JSX: Come impostare gli oggetti di scena all'attributo segnaposto

<input type="text" onChange={this.props.handleChange} placeholder={this.props.name} /> 
+2

jsbin - http://jsbin.com/yepufugige/4/edit – filipemgs

+0

grazie! Stavo posizionando i miei oggetti di scena in modo errato. – astone

risposta

4

Sembra che ci sia nulla di sbagliato in questo codice nel componente figlio. Il segnaposto dovrebbe apparire bene, come lo hai implementato.

Ecco come l'ho impostato nel genitore:

import React, { Component } from 'react'; 
import Title from'./Title'; 
import TestList from'./TestList'; 

export default class Layout extends Component { 
    constructor() { 
     super(); 
     this.state = { 
      title: 'Moving Focus with arrow keys.', 
      placeholder:'Search for something...' 
     }; 
    } 

    render() {  
     return (
      <div > 
       <Title title={ this.state.title } /> 
       <p>{ this.getVal() }</p> 
       <TestList placeholderText={this.state.placeholder} /> 
      </div> 
     ); 
    } 
} 

ecco come lo lo mostro nel bambino:

import React, { Component } from 'react'; 

export default class TestInput extends Component { 
    constructor(props){ 
     super(props); 
    }; 

    render() { 
     return (
      <div> 
       <input type="search" placeholder={this.props.placeholderText} /> 
      ); 
     } 
    } 
} 

Bit di una risposta in ritardo, ma spero che aiuta! :-)

Problemi correlati