2015-11-17 2 views
0

У меня есть элемент с этим исхКак получить динамический реф на React

ref={`inner-player${this.props.position}`} 

и в функции мне нужно работать с этим исх делать что-то вроде этого

const chipBetImage = this.refs.inner-player${this.props.position};

но я я получаю ошибку

./app/components/ui/PlayerSlot/index.js 
Module build failed: SyntaxError: /home/marcelo/Documents/Projects/application-playerinterface/app/components/ui/PlayerSlot/index.js: Unexpected token (150:50) 
    148 |  this.props.addMoney({position : this.props.position, currentBet : this.props.currentBet}); 
    149 |  } else { 
> 150 |  const chipBetImage = this.refs.inner-player${this.props.position}; 
     |             ^
    151 |  chipBetImage.classList.add('animated', 'pulse'); 

так, что это за способ?

ответ

1

${} действителен только внутри шаблона литералов. this.refs.inner-player${this.props.position}; - не шаблонный литерал.

Если вы хотите использовать имя вычисляемого свойства, вы должны использовать кронштейн обозначения:

this.refs[`inner-player${this.props.position}`] 

См Dynamically access object property using variable.

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