扩展Map.set以将新条目也保存在磁盘上

时间:2019-02-09 18:48:54

标签: javascript node.js caching persistence

这不是为了生产而已,只是为了重新启动本地服务器时从我离开的地方开始的开发目的。

我尝试不为此修改生产代码。我想在调用map.set(...)时将新条目保存到磁盘。下面的代码可以让我知道我想要什么。

// developing code that will be commented out in production
Map.prototype.set=()=>{
  // new functionality save to disk with something like fs.writeFileSync()
  return new Map.set() // keep the original functionality
}

// production code
const map = new Map().set('a',1)

1 个答案:

答案 0 :(得分:0)

如果我没记错的话:

docker-compose.yml

但这也许是一种更安全的方法:

'use strict';

const oldSet = Map.prototype.set;

Map.prototype.set = function (key, value) {
  console.log(key, value); // or other IO actions
  oldSet.call(this, key, value);
};

const map = new Map();
map.set('a', 1);

console.log(map.get('a'));