Ank*_*kul 5 global global-variables reactjs
I\xe2\x80\x99m 使用 React JS。我有登录页面,它从端点接收数据作为响应。I\xe2\x80\x99m 在窗口中存储来自响应的不同组件。变量,因为它们必须在不同的组件中访问。这仅在加载新组件时才起作用,在它\xe2\x80\x99s刷新窗口之后。变量变为空。
\n\n这是我的登录组件:
\n\nhandleSubmit(event) {\nevent.preventDefault()\n\naxios\n  .post("EDN POINT LINK",\n    {\n      email: this.state.email,\n      password: this.state.password\n\n    })\n  .then((response) => {\n\n    console.log(response);\n\n    // STORING ID\n    window.id = window.responseDetails.map(\n      mID => mID.id\n    )\n    console.log(\'ID is: \' + window.id);\n\n    // STORING TOKEN\n    window.token = window.responseDetails.map(\n      mToken => mToken.token\n    )\n    console.log(\'TOKEN is: \' + window.token);\n\n    // STORING ERROR\n    window.error = window.responseDetails.map(\n      mError => mError.error\n    )\n    console.log(\'ERROR is: \' + window.error);\n这是我访问窗口的组件。多变的:
\n\n render() {\n\n    console.log(window.id)\n    return (\n\n    )\n}\n如果我有更多时间,我会实现 Redux 或 Context 之类的东西,但不幸的是我没有,因为我对 React JS 相当陌生。
\n小智 2
请不要在窗口中存储持久数据!
窗口是全局的,但其范围与新页面加载有关。
为了获得一致的数据,您应该考虑持久存储,例如 localStorage、sessionStorage 和 cookie。
在这里查看更多示例localStorage、sessionStorage、session 和 cookies 之间有什么区别?
| 归档时间: | 
 | 
| 查看次数: | 14878 次 | 
| 最近记录: |