pomelo-config-reader

pomelo-config-reader

Usage no npm install needed!

<script type="module">
  import pomeloConfigReader from 'https://cdn.skypack.dev/pomelo-config-reader';
</script>

README

pomelo-config-reader

Config data plugin for Pomelo(a fast,scalable,distributed game server framework for Node.js. http://pomelo.netease.com), it can be used in Pomelo(>=0.7.0).

pomelo-config-reader is a config data(.csv) plugin for Pomelo. pomelo-config-reader can watch all config files in the given dir and reload the file automatically when it is modified.

Installation

npm install pomelo-config-reader

Usage

var configReader = require('pomelo-config-reader');

app.configure('production|development', function() {
  app.use(configReader, {
    watcher: {
        dir: __dirname + '/config/data',
        idx: 'id',
        interval: 3000,
        nameRow: 1,
        typeRow: 3,
        ignoreRows: [2, 4],
        indexColumn: 1
    }
  });
});

heroInitConf = app.get('configReader').get('Heroinit');

Please refer to pomelo-config-reader-demo for more usage

Big Issues

Add nameRow config(necessary)

This config indicate which row the field name is in.

Add typeRow config(necessary)

This config indicate which row the field type is in(using for type-cast,saving you from manual type-cast).

Add ignoreRows config(optional)

This is a array that contain row nums indicate which row will be ignored when parsing the csv file.

Add indexColumn config(optional)

This config indicate which column is using for index. If indexColumn configed,then the idx config will be no effect.

type support

Int,Float,String,Boolean,TS(timestamp,format is YYYY/MM/DD HH:mm),Array4Int,Array4String(array delimeter by '|')

Note: row and column are all start from 1

Add a new method:findByFunc(func)

Use this method,you can define a testing function and pass it to findByFunc and will get a record that satisfies the conditions defined in testing function