在下面的代码中,我想将Person.js的名称作为prop传递给App.js,但我不知道该怎么做,如果可以的话请解释一下我该怎么做。
App.js
import { useState,useEffect } from 'react';
// import Person from './Person'
function App(props) {
const [greet, setGreeet] = useState("");
return (
<div className="App">
<h1> Good {greet} </h1>
</div>
);
}
export default App;
Person.js
import React from 'react';
import App from './App'
export default function Person (){
const name="Jenifer"
return(
<div></div>
);
}
答案 0 :(得分:0)
将名称作为属性从person.js(父组件)传递到App.js(子组件)
Person.js
import React from 'react';
import App from './App'
export default function Person (){
const name="Jenifer"
return(
<div>
<App name={name}/>
</div>
);
}
App.js
import { useState,useEffect } from 'react';
// import Person from './Person'
function App(props) {
const [greet, setGreeet] = useState("");
return (
<div className="App">
<h1> Good Morning {props.name} </h1> // Good Morning Jenifer
</div>
);
}
export default App;
答案 1 :(得分:0)
我认为您正在询问如何将数据从孩子传递给父母。
您必须将方法从App传递给Person。
然后从Person组件中调用方法。
也请参阅文档
https://reactjs.org/docs/lifting-state-up.html
void build(int level=0,int l=0, int r=size)
{
int m = (l+r)/2;
table[level][m] = A[m]%P;
for(int i=m-1;i>=l;i--)
table[level][i] = (long long)table[level][i+1] * A[i] % P;
if(m+1 < r) {
table[level][m+1] = A[m+1]%P;
for(int i=m+2;i<r;i++)
table[level][i] = (long long)table[level][i-1] * A[i] % P;
}
if(l + 1 != r) // r - l > 1
{
build(level+1, l, m);
build(level+1, m, r);
}
}
答案 2 :(得分:0)
最后我找到了原因,这是因为我试图将数据从子类传递给父类。