【发布时间】:2022-01-03 10:19:11
【问题描述】:
刚刚在 ReactJS 进行了一次面试,给了我一个奇怪的模板,其中一些函数(question1()、question2()、question3())在组件之外
我被要求打印名称并添加一个按钮以将新对象添加到数据中,然后屏幕将更新为新名称
1。 假设我只允许更改 question1()、question2() 的返回值。 question3(),是否可以将'setName'传递给question1()、question2()、question3()?
2。 把这些函数(question1(), question2(), question3())移到App组件里面是不是唯一的办法?
import React from "react";
import "./styles.css";
function question1() {
return "---";
}
function question2() {
return "---";
}
function question3() {
return "---";
}
export default function App() {
const [name, setName] = useState();
const data = [
{
name: "Ruby",
stars: 10,
popularity: "90%"
},
{
name: "Elliot",
stars: 90,
popularity: "100%"
},
{
name: "Holly",
stars: 55,
popularity: "15%"
},
{
name: "Jack",
stars: 50,
popularity: "1%"
},
{
name: "",
stars: 0,
popularity: ""
}
];
return (
<div className="App">
<h2>Code the answers below!</h2>
<p>
Question 1:
<br />
</p>
{question1(data)}
<br />
<br />
<p>
Question 2:
<br />
</p>
{question2(data)}
<br />
<br />
<p>
Question 3:
<br />
</p>
{question3(data)}
<br />
<br />
<p>
Question 4:
<br />
</p>
<button>Add another entry</button>
<br />
<br />
</div>
);
}
【问题讨论】:
-
这里的代码是他们给你的还是你完全修改过?
-
除了“const [name, setName] = useState()”,其他都给了。
-
他们是否解释了问题功能的目的是什么?目前,您被要求做的只是列出名称,并提供一个按钮,以及一些新功能以将新对象添加到数组中。
-
其实就是这样,没有多余的信息。他们将这些代码放在代码沙箱中,每个人都在 Teams 中看着我。所以,我想知道是否只允许更改那些函数的返回值(1、2、4)
标签: javascript reactjs ecmascript-6