github-pages-deploy-action/node_modules/mimic-fn/readme.md

70 lines
1.2 KiB
Markdown
Raw Normal View History

2020-01-28 13:07:56 +08:00
# mimic-fn [![Build Status](https://travis-ci.org/sindresorhus/mimic-fn.svg?branch=master)](https://travis-ci.org/sindresorhus/mimic-fn)
> Make a function mimic another one
Useful when you wrap a function in another function and like to preserve the original name and other properties.
## Install
```
$ npm install mimic-fn
```
## Usage
```js
const mimicFn = require('mimic-fn');
function foo() {}
foo.unicorn = '🦄';
function wrapper() {
2020-03-31 20:40:00 +08:00
return foo();
2020-01-28 13:07:56 +08:00
}
console.log(wrapper.name);
//=> 'wrapper'
mimicFn(wrapper, foo);
console.log(wrapper.name);
//=> 'foo'
console.log(wrapper.unicorn);
//=> '🦄'
```
## API
It will copy over the properties `name`, `length`, `displayName`, and any custom properties you may have set.
### mimicFn(to, from)
2020-03-31 20:40:00 +08:00
Modifies the `to` function and returns it.
2020-01-28 13:07:56 +08:00
#### to
Type: `Function`
Mimicking function.
#### from
Type: `Function`
Function to mimic.
## Related
- [rename-fn](https://github.com/sindresorhus/rename-fn) - Rename a function
2020-03-31 20:40:00 +08:00
- [keep-func-props](https://github.com/ehmicky/keep-func-props) - Wrap a function without changing its name, length and other properties
2020-01-28 13:07:56 +08:00
## License
MIT © [Sindre Sorhus](https://sindresorhus.com)