2015-09-11 6 views
0

У меня есть таблица, содержащая строки, и я хочу, чтобы использовать getDOMNode для изменения DOM.ReactJS DOM dynamic refs

Обычно я определял ref компонента ref = "mytable", а затем получал ref, используя this.refs.mytable.getDOMNode(); Я хочу, чтобы создать имя ссылки в зависимости от идентификатора.

Как я могу получить эту DOM с помощью ref = {"row" + val.id)? Я попытался использовать скобки this.refs ['row' + i] getDOMNode(); но я все еще получаю ошибку, вот скрипку: https://jsfiddle.net/ux4rL8sf/4/

onRowClick: function (i) { 
    var x = this.refs['row' + i]getDOMNode(); 
    //Do Something with x 
}, 
var Items = this.state.currentItems.map(function(val) { 
    return (
    <tr ref={"row" + val.id} onClick={this.onRowClick.bind(this, val.id) }> </tr> 
    ) 
}); 

ответ

1

Вы почти там, просто использовать кронштейн обозначения, как этот

onRowClick: function (i) { 
    var x = this.refs['row' + i].getDOMNode(); 
    //Do Something with x 
} 
+0

Fixed вопросы см эту скрипку вместо: HTTPS : //jsfiddle.net/ux4rL8sf/4/ Uncaught TypeError: Невозможно прочитать свойство 'getDOMNode' неопределенного – barracuda

Смежные вопросы