我有一个问题,不知何故我无法解决它。我尝试了几个小时,但我只是没有找到解决方案。它适用于较旧的项目,但不适用于使用 create-react-app 创建的全新 React 项目。
考虑以下代码:
应用程序.js:
function App() {
const test = {
test1: {},
test2: {}
};
return (
<div className="App">
Cool!
<Test
name1="cool1"
{...test}
/>
</div>
);
}
export default App;
这里没什么大不了的。如果我使用 npm start 启动项目,一切都会按预期进行,并且我会看到“Cool!” 在浏览器中。(测试定义如下,它是一个返回 div 的简单组件。)
现在,如果我尝试...props
在我的测试函数中使用参数,如下所示:
export const Test = ({name1, ...props}) => {
return (
<div>yay! {props.name1}</div>
)
};
它在 chrome 中运行良好,但 Microsoft Edge 说:
SCRIPT1028:SCRIPT1028:需要的标识符、字符串或数字
我在旧项目中使用这种语法,用旧版本的 create-react-app 创建,没有任何问题,所以我不太确定问题出在哪里。这甚至可能是 create-react-app 中的一个普遍错误,因为该项目实际上是用它创建的,并且没有添加任何库。
最好的问候并感谢您的帮助!