js 如何覆盖export导出的模块?

//data.js

const Data = {a:1}

export default Data

//show.jsx
import Data from './data'

export default class indexShow extends Component{
  componentWillMount() {
    Data = {a:2}     //通过直接赋值的方式改变Data的值报错,
  }  
}

有什么方法可以实现吗?

阅读 3.3k
2 个回答

供参考 只要网页不重新刷新 数据都在

let valuesMap = new Map();

class serviceClass {
  constructor() {}
  getItem(key) {
    const stringKey = String(key);
    if (valuesMap.has(key)) {
      return valuesMap.get(stringKey);
    }
    return null;
  }
  setItem(key, val) {
    return valuesMap.set(String(key), val);
  }

  clear() {
    return valuesMap.clear();
  }
}
const service = new serviceClass();

export default service;
const Data = {_data: {1: 1}}

export default Data

//show.jsx
import Data  from './data'

export default class indexShow extends Component{
  componentWillMount() {
    Data._data = {a:2}     //通过直接赋值的方式改变Data的值报错,
  }  
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题