0

我正在尝试根据值设置 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}
/>

但它不起作用。

4

2 回答 2

1

来自变量的每个参数都必须在括号内。

因此,您应该有ref={testtest}

然后,您将通过this.refs[testtest]

但是我很好奇什么用例需要动态引用。

于 2016-03-16T12:23:09.807 回答
1

我相信你想要这样的东西:

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} />;
  }
}
于 2016-03-17T09:25:49.903 回答