当前位置: 首页 > 知识库问答 >
问题:

在React中执行道具验证时失败道具类型。js

红经亘
2023-03-14

我正在做一个React项目,其中有一个名为CurrencyContext的上下文。js。整个项目运行得很好,但是,我得到了一个控制台错误,显示失败的prop type

完全错误消息

警告:失败的道具类型:货币内容提供者:道具类型无效;它必须是一个函数,通常来自prop-type包,但收到un定义。这种情况经常发生是因为诸如PropTypes.function而不是PropTypes.func这样的错别字。

有关更多说明,请参见CurrencyContext的代码。js。如果有什么不清楚的地方,请告诉我。

import React, {Component, createContext} from "react"

export const CurrencyContext = createContext()

class CurrencyContextProvider extends Component {

    constructor(props) {
        super(props);
        this.state = {
            selectedCurrency: 'USD'
        }
    }

    setCurrency(c){
        this.setState({selectedCurrency: c})
    }

    render() {
        return (
            <CurrencyContext.Provider value={{...this.state, setCurrency: this.setCurrency.bind(this)}}>
                {this.props.children}
            </CurrencyContext.Provider>
        )
    }
}

CurrencyContextProvider.propTypes = {
    children: React.ReactNode
}

export default CurrencyContextProvider;

共有1个答案

向俊贤
2023-03-14

反应。ReactNode在javascript中是未定义的。如果您使用typecript,它将是一种类型,但即使是这种类型也只存在于编译时,不能用于proxType。

相反,做儿童道具类型的方法是:

import PropTypes from 'prop-types';
// ...
CurrencyContextProvider.propTypes = {
    children: PropTypes.node
}
 类似资料:
  • 我在react native中引入了用于搜索的Texinput。代码如下: 和: 每当我在输入文本后运行Android时,我都会看到这个警告: 警告失败属性类型为TextInput提供的“object”类型的无效属性“value”,应为“string”

  • 我得到警告,因为警告:失败的道具类型:组件:道具类型是无效的;它必须是一个函数,通常来自包,但收到了 我的代码是: 我的功能运行正常,但出现此控制台错误是否有人可以帮助我解决此警告?

  • 本文向大家介绍react-native 道具类型,包括了react-native 道具类型的使用技巧和注意事项,需要的朋友参考一下 示例 该prop-types包允许您向组件添加运行时类型检查,以确保传递给组件的道具类型正确。例如,如果不将aname或isYummyprop传递给下面的组件,它将在开发模式下引发错误。在生产模式下,不进行道具类型检查。定义propTypes可以使您的组件更具可读性和

  • 问题内容: 我有下一个代码,随便抛出: 反应/道具类型onClickOut; 道具验证中缺少 反应/道具型儿童;道具验证中缺少 已定义,但eslint无法识别。 package.json .babelrc .eslintrc 问题答案: 问题出在handleClick中的流注释中,我删除了它,并且工作正常,谢谢@alik

  • 我收到警告“警告:失败的道具类型:提供给的类型为

  • 我试图展示一个简单的例子。通过将图像路径作为道具发送到要渲染它的组件,来创建jpg图像。以下面的方式。 应用程序。js 图像显示。js 图像lider.js 我的文件夹结构是: 理想情况下,当我通过本地存储的图像路径时,图像应该被显示,但是我没有看到任何图像显示,而是一条警告消息,上面写着:“失败的道具类型:无效的道具‘源’提供给‘转发参考(图像)’”