@action-land/snabbit 中文文档教程

发布于 6年前 浏览 14 更新于 3年前

@action-land/snabbit

基于Action 的功能组件

Component

一个组件由 4 个纯函数组成 —

  1. init: Creates the initial state of the component.
  2. update: Is a reducer function.
  3. command: Is a command function.
  4. view: Takes in the state and other params and returns a virtual dom element.
  5. Components are framework agnostic.
export interface Component<State, Params, VNode> {
  init(p?: Partial<State>): State
  update<T>(action: Action<T>, state: State): State
  command<T, R>(action: Action<T>, state: State): Action<R>
  view(e: Hoe, m: State, p: Params): VNode
}

init()

  1. Takes in one argument which contains a partial version of the State, ie. all properties are optional.
  2. Returns a new version of the State.
function init(p?: Partial<State>): State

update()

  1. Its an [update function] that takes in an Action and a State and returns a new State.
 function update (action: Action, state: State): State

command()

  1. Its an command function that takes in an Action and a State and returns a new Action.
 function command (action: Action, state: State): Action

view()

  1. Takes in three arguments — Hoe, State and Params.
  2. Returns a new virtual dom element — VNode.
  3. VNode can be anything implementation from [React], [snabbdom] etc.
function view(e: Hoe, s: State, p: Params): VNode

@action-land/snabbit

Action based functional components

Component

A component is set of 4 pure functions —

  1. init: Creates the initial state of the component.
  2. update: Is a reducer function.
  3. command: Is a command function.
  4. view: Takes in the state and other params and returns a virtual dom element.
  5. Components are framework agnostic.
export interface Component<State, Params, VNode> {
  init(p?: Partial<State>): State
  update<T>(action: Action<T>, state: State): State
  command<T, R>(action: Action<T>, state: State): Action<R>
  view(e: Hoe, m: State, p: Params): VNode
}

init()

  1. Takes in one argument which contains a partial version of the State, ie. all properties are optional.
  2. Returns a new version of the State.
function init(p?: Partial<State>): State

update()

  1. Its an [update function] that takes in an Action and a State and returns a new State.
 function update (action: Action, state: State): State

command()

  1. Its an command function that takes in an Action and a State and returns a new Action.
 function command (action: Action, state: State): Action

view()

  1. Takes in three arguments — Hoe, State and Params.
  2. Returns a new virtual dom element — VNode.
  3. VNode can be anything implementation from [React], [snabbdom] etc.
function view(e: Hoe, s: State, p: Params): VNode
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文