Javascript 更新组件文本

Javascript 更新组件文本,javascript,reactjs,redux,Javascript,Reactjs,Redux,我是react的新手,我正在尝试在提交表单后更新一些react组件。事实上,表单可以获取一些对象,一旦检索到该对象,我们可以显示一些文本,如“尝试获取对象时出错”或“加载…”或“成功检索对象” 这是我的状态: interface IState { inputText: string; isFetching: boolean; isError: boolean; cvs: CvModel[]; } 为了呈现我的表单和文本,我获得了以下代码: export default () =

我是react的新手,我正在尝试在提交表单后更新一些react组件。事实上,表单可以获取一些对象,一旦检索到该对象,我们可以显示一些文本,如“尝试获取对象时出错”或“加载…”或“成功检索对象” 这是我的状态:

interface IState {
  inputText: string;
  isFetching: boolean;
  isError: boolean;
  cvs: CvModel[];
}
为了呈现我的表单和文本,我获得了以下代码:

export default () => (
  <div>
      <FormFindCvContainer />
      <hr/>
      <DetailCvSearchContainer />
  </div>
);
我最终得到了显示文本的代码:

class DetailCvSearchContainer extends React.Component<IProps, undefined> {
  render() {
      let result = <div></div>;
      if (this.props.isFetching) {
          result = <h2>Loading...</h2>;
      } else if (this.props.isError) {
          result = <div>No CV</div>;
      }
      return result;
  }
}
class DetailCvSearchContainer扩展了React.Component{
render(){
让结果=;
if(this.props.isFetching){
结果=加载。。。;
}else if(this.props.isError){
结果=无CV;
}
返回结果;
}
}
如果我试图找到一些cv,但它不存在,它会显示“无cv”。 问题是,如果我回到主页并转到表单查找简历,仍然会显示文本“No cv”。但我还没找到。 当我第一次来到表单页面时,如何使其不显示任何内容?

class DetailCvSearchContainer extends React.Component{
class DetailCvSearchContainer extends React.Component<IProps, undefined> {
  render() {
    let result = <div></div>;
    if (this.props.isFetching) {
      result = <h2>Loading...</h2>;
    } else if (this.props.isError) {
      result = <div>No CV</div>;
    } else if(//check if cv is empty object or something){
      result = <div>Search for CV</div>
    }
    return result;
}
render(){ 让结果=; if(this.props.isFetching){ 结果=加载。。。; }else if(this.props.isError){ 结果=无CV; }else if(//检查cv是否为空对象或其他内容){ 结果=搜索CV } 返回结果; }
}


这应该行得通。我不知道您的初始状态是什么,但您可以将cv字段设置为null,以便检查是否执行了提取。

如果我允许,它将像我看到的那样继续运行。第一次,当搜索到的简历不存在时,我发送了一个操作来更新我的状态:iError现在为true。我回到主页,进入表单页面。在做任何事情之前,会显示文本“no cv”,因为当它选中“iError”时“我明白了,这是真的。您可以使用本地状态轻松实现所需的行为。您不能将所有内容都推送到redux商店。如果仍要使用redux存储,则可以在加载表单时发送一个操作,将表单值重置为默认值
class DetailCvSearchContainer extends React.Component<IProps, undefined> {
  render() {
    let result = <div></div>;
    if (this.props.isFetching) {
      result = <h2>Loading...</h2>;
    } else if (this.props.isError) {
      result = <div>No CV</div>;
    } else if(//check if cv is empty object or something){
      result = <div>Search for CV</div>
    }
    return result;
}