diff --git a/package.json b/package.json index 8e53799..eb4282c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "tracker-utils", - "version": "1.6.13", + "version": "1.6.14", "description": "Tracker Utils", "main": "index.js", "scripts": { diff --git a/src/redis.js b/src/redis.js index a5dad8a..8e67578 100644 --- a/src/redis.js +++ b/src/redis.js @@ -54,6 +54,25 @@ class Redis { return this._execute('hmget', key, toGetFields); } + /** + * Delete one or more fields from a redis hash + * @param {String} key Hash key + * @param {...String} fields Field names to delete + */ + async hdel(key, ...fields) { + if (_.size(fields) == 0) { + return 0; + } + // Support passing a single array of fields: hdel(key, [f1, f2]) + if (_.size(fields) == 1 && _.isArray(fields[0])) { + fields = fields[0]; + } + if (_.size(fields) == 0) { + return 0; + } + return this._execute('hdel', key, ...fields); + } + async get(key) { return this._execute('get', key); }