|
@@ -178,59 +178,6 @@ console.log(outputData);
|
|
|
|
|
|
|
|
### Класс `DataProjector`
|
|
### Класс `DataProjector`
|
|
|
|
|
|
|
|
-Создание проекции с помощью схемы.
|
|
|
|
|
-
|
|
|
|
|
-```js
|
|
|
|
|
-import {DataProjector} from '@e22m4u/js-data-projector';
|
|
|
|
|
-
|
|
|
|
|
-const projector = new DataProjector();
|
|
|
|
|
-
|
|
|
|
|
-const schema = {
|
|
|
|
|
- name: true,
|
|
|
|
|
- password: false,
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-const data = {
|
|
|
|
|
- name: 'Fedor', // будет доступно, явное правило
|
|
|
|
|
- password: 'pass123', // будет исключено, явное правило
|
|
|
|
|
- extra: 10 // будет доступно в режиме по умолчанию
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-const result = projector.project(schema, data);
|
|
|
|
|
-console.log(result);
|
|
|
|
|
-// {
|
|
|
|
|
-// name: 'Fedor',
|
|
|
|
|
-// extra: 10
|
|
|
|
|
-// }
|
|
|
|
|
-```
|
|
|
|
|
-
|
|
|
|
|
-Создание проекции в строгом режиме.
|
|
|
|
|
-
|
|
|
|
|
-```js
|
|
|
|
|
-import {DataProjector} from '@e22m4u/js-data-projector';
|
|
|
|
|
-
|
|
|
|
|
-const projector = new DataProjector();
|
|
|
|
|
-
|
|
|
|
|
-const schema = {
|
|
|
|
|
- name: true,
|
|
|
|
|
- password: false,
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-const data = {
|
|
|
|
|
- name: 'Fedor', // будет доступно, явное правило
|
|
|
|
|
- password: 'pass123', // будет исключено, явное правило
|
|
|
|
|
- extra: 10 // будет исключено в строгом режиме
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-const result = projector.project(schema, data, {
|
|
|
|
|
- strict: true, // <= строгий режим
|
|
|
|
|
-});
|
|
|
|
|
-console.log(result);
|
|
|
|
|
-// {
|
|
|
|
|
-// name: 'Fedor'
|
|
|
|
|
-// }
|
|
|
|
|
-```
|
|
|
|
|
-
|
|
|
|
|
Создание проекции с помощью именной схемы.
|
|
Создание проекции с помощью именной схемы.
|
|
|
|
|
|
|
|
```js
|
|
```js
|