Javascript 可点击的动态输出文本

Javascript 可点击的动态输出文本,javascript,reactjs,react-native,Javascript,Reactjs,React Native,目标: 将文本输入到两个文本输入字段(标题文本+正文文本) 单击SubmitTouchableHighlight按钮 仅标题会渲染到视图中 单击标题前进到“消息视图”,其中显示标题和正文文本 现在,在提交时,我已按预期将标题显示到视图中。 (此当前代码示例仅显示我的标题,为简单起见,我已豁免了正文文本输入) 但是我不确定这是否有效 Class Postings extends Component { constructor(props) { super(props);

目标:

  • 将文本输入到两个文本输入字段(标题文本+正文文本)
  • 单击SubmitTouchableHighlight按钮
  • 仅标题会渲染到视图中
  • 单击标题前进到“消息视图”,其中显示标题和正文文本
  • 现在,在提交时,我已按预期将标题显示到视图中。 (此当前代码示例仅显示我的标题,为简单起见,我已豁免了正文文本输入)

    但是我不确定这是否有效

    Class Postings extends Component { 
        constructor(props) {
            super(props);
            this.state={
                inputText: '',
                textBucket: [] // all inputText will be added to array
            }
        }
    
            render() {
                return(
                    <View>
                        <Text>Enter text below</Text>
                        <TextInput
                            onChange{(event) => this.setState({inputText: event.nativeEvent.text})}
                            value={this.state.textInput} />
                        <TouchableHighlight onPress={(this.submitHandler.bind(this))}>
                            <Text>Submit</Text>
                        </TouchableHighlight>
    
    
                        // Below is the rendered output from inputText
    
                        {this.state.textBucket.map((inputvalue, i) => <Text key={i}>{inputvalue}</Text>)}
                    </View>
                );
            }
    
    
            // Add each input item into the text bucket array
    
            submitHandler() {
                var inputText = this.state.inputText;
                var textBucket = this.state.inputText;
                this.setState({textBucket: textBucket.concat(inputText)})
            }
    
        }
    
    nextViewHandler(index) {
        this.props.navigator.push({
            component: NextView,
            passProps: { textBucket: this.state.items[index] },
        });
    }