|
@@ -11,6 +11,13 @@ npm install @e22m4u/service
|
|
|
|
|
|
|
|
## ServiceContainer
|
|
## ServiceContainer
|
|
|
|
|
|
|
|
|
|
+Методы:
|
|
|
|
|
+
|
|
|
|
|
+- `get(ctor, ...args)` получить существующий или новый экземпляр
|
|
|
|
|
+- `has(ctor)` проверка существования конструктора в контейнере
|
|
|
|
|
+- `add(ctor, ...args)` добавить конструктор в контейнер
|
|
|
|
|
+- `use(ctor, ...args)` добавить конструктор и создать экземпляр
|
|
|
|
|
+
|
|
|
Метод `get` класса `ServiceContainer` инкапсулирует
|
|
Метод `get` класса `ServiceContainer` инкапсулирует
|
|
|
создание экземпляра полученного конструктора и сохраняет
|
|
создание экземпляра полученного конструктора и сохраняет
|
|
|
его для последующих обращений по принципу "одиночки".
|
|
его для последующих обращений по принципу "одиночки".
|
|
@@ -47,14 +54,14 @@ console.log(myDate2); // Wed Jan 01 2025 03:00:00
|
|
|
console.log(myDate3); // Sun May 05 2030 03:00:00
|
|
console.log(myDate3); // Sun May 05 2030 03:00:00
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
-Методы:
|
|
|
|
|
|
|
+## Service
|
|
|
|
|
|
|
|
-- `get(ctor, ...args)` получить существующий или новый экземпляр
|
|
|
|
|
-- `has(ctor)` проверка существования конструктора в контейнере
|
|
|
|
|
-- `add(ctor, ...args)` добавить конструктор в контейнер
|
|
|
|
|
-- `use(ctor, ...args)` добавить конструктор и создать экземпляр
|
|
|
|
|
|
|
+Методы:
|
|
|
|
|
|
|
|
-## Service
|
|
|
|
|
|
|
+- `getService(ctor, ...args)` получить существующий или новый экземпляр
|
|
|
|
|
+- `hasService(ctor)` проверка существования конструктора в контейнере
|
|
|
|
|
+- `addService(ctor, ...args)` добавить конструктор в контейнер
|
|
|
|
|
+- `useService(ctor, ...args)` добавить конструктор и создать экземпляр
|
|
|
|
|
|
|
|
Сервисом может являться совершенно любой класс. Однако,
|
|
Сервисом может являться совершенно любой класс. Однако,
|
|
|
если это наследник встроенного класса `Service`, то такой
|
|
если это наследник встроенного класса `Service`, то такой
|
|
@@ -121,13 +128,6 @@ const foo4 = this.getService(Foo); // возврат уже пересо
|
|
|
console.log(foo3 === foo4); // true
|
|
console.log(foo3 === foo4); // true
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
-Методы:
|
|
|
|
|
-
|
|
|
|
|
-- `getService(ctor, ...args)` получить существующий или новый экземпляр
|
|
|
|
|
-- `hasService(ctor)` проверка существования конструктора в контейнере
|
|
|
|
|
-- `addService(ctor, ...args)` добавить конструктор в контейнер
|
|
|
|
|
-- `useService(ctor, ...args)` добавить конструктор и создать экземпляр
|
|
|
|
|
-
|
|
|
|
|
## Тесты
|
|
## Тесты
|
|
|
|
|
|
|
|
```bash
|
|
```bash
|