aboutsummaryrefslogtreecommitdiff
path: root/node_modules/@babel/plugin-proposal-class-properties/README.md
diff options
context:
space:
mode:
authorruki <waruqi@gmail.com>2018-11-08 00:43:05 +0800
committerruki <waruqi@gmail.com>2018-11-07 22:18:30 +0800
commit89e95b3f143682ed9a006991bacf45c9dcba4818 (patch)
tree4f44cf41b828577d583890bdd5a1c31e8491a6ba /node_modules/@babel/plugin-proposal-class-properties/README.md
parentaa7f0199255277949790b41c56e8ec97dd4f0da4 (diff)
downloadxmake-docs-89e95b3f143682ed9a006991bacf45c9dcba4818.tar.gz
xmake-docs-89e95b3f143682ed9a006991bacf45c9dcba4818.zip
remove node_modulesvuepress
Diffstat (limited to 'node_modules/@babel/plugin-proposal-class-properties/README.md')
-rw-r--r--node_modules/@babel/plugin-proposal-class-properties/README.md149
1 files changed, 0 insertions, 149 deletions
diff --git a/node_modules/@babel/plugin-proposal-class-properties/README.md b/node_modules/@babel/plugin-proposal-class-properties/README.md
deleted file mode 100644
index dee62c85..00000000
--- a/node_modules/@babel/plugin-proposal-class-properties/README.md
+++ /dev/null
@@ -1,149 +0,0 @@
-# @babel/plugin-proposal-class-properties
-
-> This plugin transforms class properties
-
-## Example
-
-Below is a class with four class properties which will be transformed.
-
-```js
- class Bork {
- //Property initializer syntax
- instanceProperty = "bork";
- boundFunction = () => {
- return this.instanceProperty;
- };
-
- //Static class properties
- static staticProperty = "babelIsCool";
- static staticFunction = function() {
- return Bork.staticProperty;
- };
- }
-
- let myBork = new Bork;
-
- //Property initializers are not on the prototype.
- console.log(myBork.__proto__.boundFunction); // > undefined
-
- //Bound functions are bound to the class instance.
- console.log(myBork.boundFunction.call(undefined)); // > "bork"
-
- //Static function exists on the class.
- console.log(Bork.staticFunction()); // > "babelIsCool"
-```
-
-
-## Installation
-
-```sh
-npm install --save-dev @babel/plugin-proposal-class-properties
-```
-
-## Usage
-
-### Via `.babelrc` (Recommended)
-
-**.babelrc**
-
-Without options:
-
-```json
-{
- "plugins": ["@babel/plugin-proposal-class-properties"]
-}
-```
-
-With options:
-
-```json
-{
- "plugins": [
- ["@babel/plugin-proposal-class-properties", { "loose": true }]
- ]
-}
-```
-
-### Via CLI
-
-```sh
-babel --plugins @babel/plugin-proposal-class-properties script.js
-```
-
-### Via Node API
-
-```javascript
-require("@babel/core").transform("code", {
- plugins: ["@babel/plugin-proposal-class-properties"]
-});
-```
-
-## Options
-
-### `loose`
-
-`boolean`, defaults to `false`.
-
-When `true`, class properties are compiled to use an assignment expression instead of `Object.defineProperty`.
-
-#### Example
-
-```js
- class Bork {
- static a = 'foo';
- static b;
-
- x = 'bar';
- y;
- }
-```
-
-Without `{ "loose": true }`, the above code will compile to the following, using `Object.defineProperty`:
-
-```js
-var Bork = function Bork() {
- babelHelpers.classCallCheck(this, Bork);
- Object.defineProperty(this, "x", {
- configurable: true,
- enumerable: true,
- writable: true,
- value: 'bar'
- });
- Object.defineProperty(this, "y", {
- configurable: true,
- enumerable: true,
- writable: true,
- value: void 0
- });
-};
-
-Object.defineProperty(Bork, "a", {
- configurable: true,
- enumerable: true,
- writable: true,
- value: 'foo'
-});
-Object.defineProperty(Bork, "b", {
- configurable: true,
- enumerable: true,
- writable: true,
- value: void 0
-});
-```
-
-However, with `{ "loose": true }`, it will compile using assignment expressions:
-
-```js
-var Bork = function Bork() {
- babelHelpers.classCallCheck(this, Bork);
- this.x = 'bar';
- this.y = void 0;
-};
-
-Bork.a = 'foo';
-Bork.b = void 0;
-```
-
-## References
-
-* [Proposal: ES Class Fields & Static Properties](https://github.com/jeffmo/es-class-static-properties-and-fields)