首页 > 解决方案 > " TypeError: _Fire.default.shared.addPost 不是函数 "'Fire.default.shared.addPost' 未定义

问题描述

我收到此错误:TypeError: _Fire.default.shared.addPost is not a function.'Fire.default.shared.addPost' is undefined 如果有人能提供帮助,我会很高兴

 handlePost = () => {
Fire.shared
  .addPost({
    text: this.state.text.trim(),
    localUri: this.state.image,
  })
  .then((ref) => {
    this.setState({ text: "", image: null });
    this.props.navigation.goBack();
  })
  .catch((error) => {
    alert(error.message);
  });

};

标签: javascriptreact-native

解决方案


提供具体的代码片段会更好地理解。

如果你使用的是 react 类组件,你可以在构造函数中绑定函数。

constructor(props) 
{
  super(props);
  this.state = {};
  this.addPost= this.addPost.bind(this);
}

如果您在父组件中创建了子组件的引用并尝试从父组件访问子组件的功能,那么您之前可能已经使用了很多引用。React 不支持超过 4 个引用(大约)。

可能该_Fire.default.shared.addPost函数需要参数,而您没有传递必要和充分的参数。

此外,您可能正在通过 props 访问函数。在主组件中,该函数不存在,或者您没有绑定该函数,或者您在从子组件调用道具时没有传递必要的参数。

PS:这是四种不同的情况以及每种情况的可能解决方案。


推荐阅读