noladius
TypeScript icon, indicating that this package has built-in type declarations

0.2.8 • Public • Published

Noladius Build Status

Noladius - это React-like task runner, с жизненным циклом и асинхронностью, и это все только для cli на NodeJS.

Идея

Создать удобное окружение и иструменты для работы с типичными задачами в cli, такие как асинхронность и последовательность задач с общим хранилищем.

Noladius (группы тасков/крупная задача)

Позволяет группировать задачи и реализовывать собственную логику в последовательностях.

Обзор

Noladius является абстрактным базовым классом, поэтому редко имеет смысл обратиться к нему напрямую. Вместо этого вы обычно подклассифицируете его и определите run() метод.

Вы определяете его как обычный класс JavaScript:

class Greeting extends Noladius {
  static defaultParams = {
    name: 'world',
  }
  
  run() {
    const { name } = this.params
    
    return [
      () => console.log(`Hello, ${name}`)
    ]
  }
}

Task

Задачи позволяют разбивать крупные задачи на более мелкие, самостоятельные, многоразовые фрагменты общей системмы.

Обзор

Task является абстрактным базовым классом, поэтому редко имеет смысл обратиться к нему напрямую. Вместо этого вы обычно подклассифицируете его и определите run() метод.

Вы определяете его как обычный класс JavaScript:

class Greeting extends Task {
  static defaultParams = {
    name: 'world',
  }
  
  run() {
    console.log(`Hello, ${this.params.name}`)
  }
}

Жизненный цикл

Каждая задача имеет несколько «методов жизненного цикла», которые Вы можете переопределить для запуска кода в определенное время в процессе.

Запуск

Эти методы вызываются тогда, когда задача запускается.

  • constructor()
  • shouldRun()
  • willRun()
  • run()
  • didRun()

Обработка ошибок

Этот метод вызывается при возникновении ошибки во время запуска или в методе жизненного цикла.

  • didCatch()

Другое API

Каждый компонент также предоставляет некоторые другие API:

  • setState()

Свойства класса

  • defaultParams

Свойства экземпляра

  • params
  • state

Readme

Keywords

none

Package Sidebar

Install

npm i noladius

Weekly Downloads

2

Version

0.2.8

License

MIT

Last publish

Collaborators

  • dvpetrov