You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
parttimejob/node_modules/copy-to
侯晓宇 0cb2601919
init
1 month ago
..
README.md init 1 month ago
index.js init 1 month ago
package.json init 1 month ago

README.md

copy-to

Build Status

copy an object's properties to another one, include propertiy, getter and setter.

Install

npm install copy-to

Usage

copy(src).to(des);
copy(src).toCover(des);
copy(src).override(des);

copy(src).pick('proName1', 'proName2').to(des);
copy(src).pick('proName1', 'proName2').toCover(des);
copy(src).pick('proName1', 'proName2').override(des);

copy(src).and(other).to(des);
copy(src).and(other).toCover(des);
copy(src).and(second).and(third).to(des);

copy(src).and(other).pick('proName1', 'proName2').to(des);
copy(src).and(other).pick('proName1', 'proName2').toCover(des);
copy(src).and(second).and(third).pick('proName1', 'proName2').to(des);

It won't copy access(getter / setter) by default, if you want to copy them, please use:

copy(src).withAccess().and(other).to(des);

Example

var copy = require('copy-to');

var src = {
  _name: 'foo',
  set name(val) {
    this._name = val;
  },
  get name() {
    return this._name;
  },
  show: function () {
    console.log(this._name);
  }
};

var des = {
  _name: 'bar'
};

copy(src).to(des);
copy(src).toCover(des);
copy(src).pick('_name', 'name').to(des);
copy(src).pick('_name', 'name').toCover(des);

License

MIT