如何动态传递道具?

时间:2019-10-09 07:33:03

标签: javascript reactjs react-props

我正在尝试学习如何使用react-polls(为了与后端进行进一步的通信,因此,我的代码的一些片段已为下一步做好了准备)。问题是:我希望在浏览器中看到123(与componentDidMount一样),但我没有。

当我直接传递字符串'123'而不是docker container run -d -h localdomain --name odbc2 -p 1521:1521 -p 5500:5500 -e DB_SID=ORCLCDB -e DB_PDB=ORCLPDB1 -e DB_DOMAIN=localdomain container-registry.oracle.com/database/enterprise:12.2.0.1-slim docker exec -it odbc2 bash -c "source /home/oracle/.bashrc; sqlplus /nolog" connect sys as sysdba; -- password 'Oradoc_db1' alter session set "_ORACLE_SCRIPT"=true; create user dummy identified by dummy; GRANT CONNECT, RESOURCE, DBA TO dummy; create table Docker (id int,name varchar2(20)); 时,它将起作用。

SID:ORCLCDB
PORT:15212
username: dummy
password: dummy
url: jdbc:oracle:thin:@localhost:1521:ORCLCDB

2 个答案:

答案 0 :(得分:2)

问题是您没有将this.props.quest的值传递给pollQuestion元素。要么做

<Poll question={this.props.quest} answers={pollAnswers} onVote={this.handleVote} />

在此处查看代码:https://stackblitz.com/edit/react-nngrut

或者这样做

Edit 
const pollQuestion = props => (<div>{props.quest}</div>); to
const MyPollQuestion  = props => (<div>{props.quest}</div>);

<Poll question={<MyPollQuestion quest={this.props.quest} />} answers={pollAnswers} onVote={this.handleVote} />

https://stackblitz.com/edit/react-sxf2kx?file=AppV.js

此外,所有react组件都应以大写字母开头。

答案 1 :(得分:-1)

  

React-Polls问题属性的字符串为Proptype

你是

  

试图传递一个React元素

这就是为什么它不起作用。

直接向您传递问题字符串。