我有以下变量Panel
,它已被分配了一组组件。此变量已在const registerForm = [
<div key={0} style={styles.form.inlineContainer}>
...
<TextField
floatingLabelText="First Name"
hintText="First Name"
floatingLabelFixed={true}
style={styles.form.inlineContainer.spacing}
underlineFocusStyle={styles.form.field.borderColor}
floatingLabelFocusStyle={styles.form.field.color}
floatingLabelStyle={styles.form.field.fontSize}
onChange={(input) => this.handleInput(input)}
/>
...
</div>
];
类之外定义。
handleInput
然后我有一个具有函数_this.handleInput is not a function
的类。在文本字段中输入内容时,会产生以下错误:export default class Panel extends React.Component {
constructor() {
super();
this.state = {
panel: 0
}
}
handlePanelChange = (panel) => {
this.setState({
panel: panel
});
};
handleInput = (input) => {
console.log(input);
};
render() {
const panel = this.state.panel;
const form = (panel === 0) ? signInForm : registerForm;
return (
{form}
);
}
}
onChange
如果可能,我如何才能将handleInput
事件调用//main program
LinkedListHT lst1 = new LinkedListHT();
System.out.println("lst1 size is " + lst1.size());
lst1.addHead(10);
System.out.println("lst1 size is " + lst1.size());
System.out.println(lst1);
lst1.addHead(20);
lst1.addHead(20);
lst1.addHead(20);
lst1.addHead(20);
lst1.addHead(50);
lst1.addHead(431);
lst1.addHead(57);
System.out.println(lst1);
lst1.addTail(60);
lst1.addTail(70);
lst1.addTail(20);
System.out.println(lst1);
System.out.println("20 is in there " + lst1.count(20));
System.out.println("lst1 size is " + lst1.size());
System.out.println(lst1);
lst1.delHead();
System.out.println(lst1);
lst1.delAll(20);
System.out.println(lst1);
System.out.println();
System.out.println();
System.out.println();
System.out.println("Normal sum program: " + lst1.sum());
System.out.println(lst1.sumEven());
System.out.println();
System.out.println();
System.out.println();
LinkedListHT lst2 = new LinkedListHT();
lst2.addHead(19);
lst2.addHead(45);
lst2.addHead(12);
lst2.addHead(64);
lst1.addTail2(lst2);
System.out.println(lst1);
//linkedlist class
private Node head = null; private Node tail = null;
public void addHead(int x){
//insert x at head of list
Node nw = new Node(x);
if(head == null){
head = nw; tail = nw;
}
else{
nw.setNext(head);
head = nw;
}
}
public void addTail(int x){ //add at head
Node nw = new Node(x);
if(head == null){
head = nw; tail = nw;
}
else{
tail.setNext(nw);
tail = nw;
}
public void addTail2(LinkedListHT lst){
Node k = lst.head;
while (k != null) {
System.out.println("Now adding " + k.data());
this.addTail(k.data());
System.out.println(this);
k = k.next()
public void delTail(){
if(head == tail){
head = null; tail = null;
}
else{
Node k = head;
while(k.next() != tail) k = k.next();
k.setNext(null);
tail = k;
}
}
public int size(){
Node k = head;
int len = 0;
while(k != null){
len++; k = k.next();
}
return len;
}
public void delHead(){
if(head != null)
head = head.next();
}
public void delAll(int x){
Node k = head; Node bk = head;
boolean found = false;
while(k != null) {
if(k.data() == x) {
found = true;
}
else{ bk = k; k = k.next();}
if(found) {
//System.out.println("found one!");
if(k == head)
head = k.next();
else {
bk.setNext(k.next());
k = k.next();
}
}
//System.out.println("first, k is now " + k.data() + " and bk is now " + bk.data());
//k = k.next();
//System.out.println("now, k is now " + k.data() + " and bk is now " + bk.data());
found = false;
}
}
public int sum(){
Node k = head;
int a = 0;
while(k != null){
a += k.data(); k = k.next();
}
return a;
}
public int sumEven(){
Node k = head;
int a = 0;
while(k != null){
if(k.data() % 2 == 0) {
a += k.data();
}
k = k.next();
}
return a;
}
public int count(int x){
Node k = head;
int c = 0;
while(k != null){
if(k.data() == x)
c++;
k = k.next();
}
return c;
}
public String toString(){
if(head == null) return "[]";
String s = "[";
Node k = head;
while(k.next() != null){
s = s + k.data()+", ";
k = k.next();
}
s = s + k.data()+"]";
return s;
}
//Node Class
private class Node{
int data;
Node next;
public Node(int x){
data = x; next = null;
}
public Node next(){return next;}
public void setNext(Node p){
next = p;
}
public void set(int x){data = x;}
public int data(){return data;}
}
//output
Now adding 64
[431, 50, 10, 60, 70]
Now adding 12
[431, 50, 10, 60, 70]
Now adding 45
[431, 50, 10, 60, 70]
Now adding 19
[431, 50, 10, 60, 70]
?
答案 0 :(得分:0)
由于它是一个array
,它将呈现一个UI元素,那么为此创建一个组件呢?然后,您可以通过props
将您的方法传递给React tutorial指出:
class Square extends React.Component {
render() {
return (
<button className="square">
{this.props.value}
</button>
);
}
}
class Board extends React.Component {
renderSquare(i) {
return <Square value={i} />;
}