0.1.6 • Published 2 years ago

@nebulare/data v0.1.6

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

Proxima应用间通信

通过@nebulare/data来实现,目前支持状态共享store和事件监听响应event两种方式

安装

yarn add @nebulare/data

or

npm install @nebulare/data --save

store

API

  • get(key) 从store中根据(key: string | symbol)获取变量值
  • set(key,value) 根据(key: string | symbol | object)设置store中的变量值
  • has(key) 检查插件该变量是否有变量监听事件
  • on(key,callback,force) 注册变量监听事件,(force: boolean),为true时,在注册过程中会执行一次callback
  • off(key,callback) 删除已注册的变量监听事件
  • clean(Array<key>) 删除变量的值和删除变量监听事件

示例

获取/修改 当前用户信息

// 主应用
import { store } from '@nebulare/data';

const userInfo = { name: '蒜香骨发烧友', age: 18 };
store.set('user', userInfo); // 登录后设置当前用户信息

// 子应用
import { store } from '@nebulare/data';

function showUser(userInfo) {
  console.log('current user', userInfo);
}

// 获取当前用户信息
store.get('user');
// 监听当前用户信息变化
store.on('user', showUser, true);
// 是否有变量监听事件
store.has('user') // true
// 删除监听当前用户信息变化
store.off('user', showUser, true);
// 删除变量的值和删除变量监听事件
store.clean(['user']);

Event

Api

  • on(key,callback) 注册回调函数
  • off(key,callback) 删除回调函数
  • emit(key,...args) 触发已注册的回调函数,支持传参

示例

主应用有刷新当前列表入口,子应用内有执行函数,执行完函数后需要通知主应用刷新当前列表

在主应用监听事件

// 主应用
import { event } from '@nebulare/data';

event.on('refreshList', () => {
  // 刷新当前列表
});

在子应用触发事件

// 子应用
import { event } from '@nebulare/data';

event.emit('refreshList');
0.1.6

2 years ago

0.1.5

2 years ago

0.1.4

2 years ago

0.1.3

2 years ago

0.1.2

2 years ago

0.1.1

2 years ago

0.1.0

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago