Blame view

node_modules/babel-plugin-transform-decorators/README.md 1.15 KB
6a9ffbcc   liuqimichale   地图点击事件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
  # babel-plugin-transform-decorators
  
  > Compile class and object decorators to ES5
  
  ## Example
  
  (examples are from proposal)
  
  ### Simple class decorator
  
  ```js
  @annotation
  class MyClass { }
  
  function annotation(target) {
     target.annotated = true;
  }
  ```
  
  ### Class decorator
  
  ```js
  @isTestable(true)
  class MyClass { }
  
  function isTestable(value) {
     return function decorator(target) {
        target.isTestable = value;
     }
  }
  ```
  
  ### Class function decorator
  
  ```js
  class C {
    @enumerable(false)
    method() { }
  }
  
  function enumerable(value) {
    return function (target, key, descriptor) {
       descriptor.enumerable = value;
       return descriptor;
    }
  }
  ```
  
  ## Installation
  
  ```sh
  npm install --save-dev babel-plugin-transform-decorators
  ```
  
  ## Usage
  
  ### Via `.babelrc` (Recommended)
  
  **.babelrc**
  
  ```json
  {
    "plugins": ["transform-decorators"]
  }
  ```
  
  ### Via CLI
  
  ```sh
  babel --plugins transform-decorators script.js
  ```
  
  ### Via Node API
  
  ```javascript
  require("babel-core").transform("code", {
    plugins: ["transform-decorators"]
  });
  ```
  
  ## References
  
  * [Proposal: Javascript Decorators](https://github.com/wycats/javascript-decorators/blob/master/README.md)