ReactJs-作为道具传递函数。警告:道具无效

时间:2020-09-08 11:51:47

标签: javascript reactjs

我有一个工作示例,该示例将功能从父级传递给子级作为道具,然后从子级调用它。

https://codesandbox.io/s/awesome-pond-y2h4v

但是,尽管它可以正常工作,但react不喜欢它,并且在控制台中它发出警告:标签上的道具matrixfunc的值无效。

任何建议可能是什么问题?

谢谢

3 个答案:

答案 0 :(得分:4)

问题出在这一行

<Card {...rest} className={clsx(classes.root, className)}>
Material UI中的

Card组件不具有matrixfunc属性,您正尝试使用传播运算符传递它。

答案 1 :(得分:2)

matrixfuncrest对象中:

const { className, ...rest } = props;

然后将其传递给Card

<Card {...rest} className={clsx(classes.root, className)}>

我假设Card只是将所有道具传递给div元素。但是divmatrixfunc一无所知,因此会给您警告。

您应该从matrixfunc中排除rest

const { className, matrixfunc, ...rest } = props;

并使用它:

const changeState = () => {
  matrixfunc(props);
};

答案 2 :(得分:0)

我认为您的问题是:

  1. from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC ->您应该定义空字符串React.setState()。 //这将删除错误但
  2. 这是下一个问题。在您的App1.js中,您应该粘贴React.setState('') //非matrixfunc(props.matrixvalue)

整个逻辑有点脏,但是应该可以按预期运行:)