我有一个包含状态的组件,并将状态数据传递到另一个组件中,我使用静态contextType抛出状态数据,但是数据未到达预期的组件,您认为这是错误的?谢谢
这是我的父组件
func getCurrentUser(_ completion: @escaping (SomeRequest?) -> ()) {
let path = "/somePath"
AF.request("\(url)\(path)").responseData { response in
switch response.result {
case .success(let value):
print(String(data: value, encoding: .utf8)!)
completion(try? SomeRequest(protobuf: value))
case .failure(let error):
print(error)
completion(nil)
}
}
}
这是我的孩子组成部分
export const MyContext = React.createContext();
export class MerchantByPromo extends Component {
constructor(props) {
super(props);
this.state = {
dataPromo: [],
loading: true
};
}
async componentDidMount() {
const merchant_id = this.props.match.params.id_merchant
await Api.post('language/promo-voucher-by-merchant', { MERCHANT_ID: merchant_id })
.then((response) => {
if (response.data.STATUS_CODE === '200') {
this.setState({
dataPromo: response.data.DATA,
loading: false
});
}
})
}
我总是收到这样的错误消息:“ TypeError:render不是函数”,解决方案是什么?
答案 0 :(得分:0)
<MyContext.Consumer>
{() => <p>tes</p>}
</MyContext.Consumer>
对此进行更改并检查