0.0.3-beta.8 • Published 1 year ago

@reactivity-slim/meta v0.0.3-beta.8

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

介绍

使用 对象属性的 [[Get]][[Set]] 元属性(Property Attributes)实现的响应式。

不提供深度监听功能。

安装

pnpm add @reactivity-slim/meta

使用

import { observable, observeKey, observeSelf } from ' @reactivity-slim/meta'

const data = {
  a: 1
}

observable(data)

observeKey(data, 'a', (newV, oldV) => {
  // do something...
})
observeSelf(data, () => {
  // do something...
})

API

observable(value)

将数据value变为响应式。

value:一个纯对象(plain object)或数组。

  • plain object:可监听任意属性的写入操作。
  • 数组:可监听以下更改数组自身的方法:push, pop, shift, unshift, splice, reverse, sort, fill, copyWithin

observeKey(obj, key, callback)

注册 plain object 的属性写入监听回调。当向objkey属性写入不同的属性值时,同步触发监听回调callback

obj:一个纯对象(plain object)。

key:一个stringnumbersymbol,为要监听的键。

callback:一个函数。参数分别为 newVoldV,表新键值、旧键值。无返回值。

observeSelf(value, callback)

注册 plain object,或数组的修改监听回调。当修改对象的任意键,或调用数组的修改方法(见observable),同步触发监听回调callback

value:一个纯对象(plain object)或数组。

callback:一个函数。虽然有两个参数,分别为 newVoldV,但均表数据的引用,只是最新的值。无返回值。

isObservable(value)

判断value是否为 Observable 对象。

value:任意类型的数据。但应该是一个纯对象(plain object)或数组。

return:一个 boolean,表示参数value是否为 Observable 对象。

0.0.3-beta.8

1 year ago

0.0.3-beta.6

1 year ago

0.0.3-beta.7

1 year ago

0.0.3-beta.4

1 year ago

0.0.3-beta.3

1 year ago

0.0.3-beta.2

1 year ago

0.0.3-beta.1

1 year ago

0.0.3-alpha.2

1 year ago

0.0.3-alpha.1

1 year ago

0.0.2-alpha.7

1 year ago

0.0.2-alpha.6

1 year ago

0.0.2-alpha.5

1 year ago

0.0.1

1 year ago