1.0.1 • Published 3 years ago

wistroni40-dynamic-class v1.0.1

Weekly downloads
-
License
ISC
Repository
github
Last release
3 years ago

wistroni40-dynamic-class

Install

npm i wistroni40-dynamic-class --save

Table of Contents

Feature

  • 提供動態實例類別
  • 可自訂類別別名,讓產生實例時,可以透過其他名稱實例對應物件

Usage

Dynamic Class Decorator

使用添 @DynamicClass() 裝飾器,讓要動態實例的類別被記錄

import { DynamicClass } from 'wistroni40-dynamic-class';

@DynamicClass()
export class CustomClass implements Custom {
  constructor(public property: string) {}

  public method() { ... }
}

@DynamicClass()

該裝飾器提供以下配置

ParamterTypeDescription
aliasstring | string[]可提供單個或多個類別的別名
// 單個別名
@DynamicClass({
  alias: 'AliasName'
})
class MyClass {}

// 多個別名
@DynamicClass({
  alias: ['AliasName1', 'AliasName2', ...]
})
class MyClass {}

Dynamic Class Factory

使用 DynamicClassFactory 將指定的類別(以 String 給定類別名稱)實例

import { DynamicClassFactory } from 'wistroni40-dynamic-class';

const custom = DynamicClassFactory.createInstance<Custom>(
  'CustomClass',
  'custom-property',
);
createInstance()
ParamterTypeDescription
classNmaestring要實例的類別名稱
...argsany[]實例該類別所需的建構值參數,根據實際數量添加

Example