Projekt

Obecné

Profil

Stáhnout (1.17 KB) Statistiky
| Větev: | Revize:
1 3a515b92 cagy
# mimic-fn [![Build Status](https://travis-ci.org/sindresorhus/mimic-fn.svg?branch=master)](https://travis-ci.org/sindresorhus/mimic-fn)
2
3
> Make a function mimic another one
4
5
Useful when you wrap a function in another function and like to preserve the original name and other properties.
6
7
8
## Install
9
10
```
11
$ npm install mimic-fn
12
```
13
14
15
## Usage
16
17
```js
18
const mimicFn = require('mimic-fn');
19
20
function foo() {}
21
foo.unicorn = '🦄';
22
23
function wrapper() {
24
	return foo();
25
}
26
27
console.log(wrapper.name);
28
//=> 'wrapper'
29
30
mimicFn(wrapper, foo);
31
32
console.log(wrapper.name);
33
//=> 'foo'
34
35
console.log(wrapper.unicorn);
36
//=> '🦄'
37
```
38
39
40
## API
41
42
It will copy over the properties `name`, `length`, `displayName`, and any custom properties you may have set.
43
44
### mimicFn(to, from)
45
46
Modifies the `to` function and returns it.
47
48
#### to
49
50
Type: `Function`
51
52
Mimicking function.
53
54
#### from
55
56
Type: `Function`
57
58
Function to mimic.
59
60
61
## Related
62
63
- [rename-fn](https://github.com/sindresorhus/rename-fn) - Rename a function
64
- [keep-func-props](https://github.com/ehmicky/keep-func-props) - Wrap a function without changing its name, length and other properties
65
66
67
## License
68
69
MIT © [Sindre Sorhus](https://sindresorhus.com)