ReferenceError:localStorage没有在ReactJS Build中定义

我在我的应用程序中使用localStorage对我的身份validation组件进行了很多操作,以从本地存储获取用户详细信息,并将其存储在login名中。

当我build立我的应用程序,它会引发ReferenceError: localStorage is not defined

我知道这可能是因为节点没有访问localStorage,从而出现错误。

我该如何解决这个问题?

这里是我在组件中使用的代码示例。

 import React, {PropTypes} from 'react'; import AccountBasicInfo from '../components/AccountBasicInfo'; export class Account extends React.Component { userBasicInfo(){ const user = localStorage.getItem('User') ? JSON.parse(localStorage.getItem('User')) :{}; const cashback = localStorage.getItem('cashback') ? JSON.parse(localStorage.getItem('cashback')) :{}; } render(){ return( <div> <AccountBasicInfo theme="theme2" item={this.userBasicInfo.bind(this)()}/> </div> ); } } export default Account; 

如果您需要在节点上运行相同的,未修改的代码(该代码没有本地localStorage实现),则可以考虑使用shim(如node-localstorage) 。

你也可以考虑重写你的代码来使用另一种存储信息的方式。