Как установить 'ref' из значения?

Я пытаюсь установить TextInput 'ref' из значения. Пример:

var testtest = 'testvalue'
<TextInput
ref=testtest
autoCapitalize="none"
autoCorrect={false}
autoFocus={false}
placeholderTextColor="#b8b8b8"
color="#b8b8b8"
multiline={true}
onFocus={(() => this.onFieldFocus(testtest))}
style={styles.textInput}
/>

Но это не работает.

2 ответа

Решение

Я считаю, что вы хотите что-то вроде этого:

const testtest = 'testvalue'

class TestComponent extends React.Component {
  constructor(props, ctx) {
    super(props, ctx);

    this.onFieldFocus = this.onFieldFocus.bind(this);
  }

  onFieldFocus() {
    const textInput = this.refs[testtest];
  }

  render() {
    return <TextInput ref={testtest} onFocus={this.onFieldFocus} />;
  }
}

Каждый аргумент, который исходит из переменной, должен быть в скобках.

Поэтому вы должны иметь ref={testtest}

Затем вы получите доступ к нему через this.refs[testtest]

Однако мне любопытно, какой вариант использования должен иметь динамический ref.

Другие вопросы по тегам