2.1.1 • Published 1 year ago

post-bridge v2.1.1

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

post-bridge

Version: 2

重新封装 postMessage,使其更易用。 A simple package to make post-message easily to use.

how to install ?

yarn add post-bridge
# or
npm i post-bridge

how to use ?

import postBridge from 'post-bridge';

/**
 * @param { json } configure   - 对 `Bridge` 进行设置
 *  @prop { string } namespace - 必填, 表示当前 `Bridge` 实例的名称
 *  @prop { object } origin    - 选填,设置通信的来源对象,默认: window
 *  @prop { object } target    - 选填,设置通信的目标对象,默认: window
 *  @prop { string } alias     - 选填,设置消息别名,默认: space
 * @param { json } handlers    - `Bridge` 生命周期函数
 *  @method onConnect          - 当成功建立 `Bridge` 连接时触发
 *  @method onAnswer           - 发送消息时,响应成功或失败时触发
 *  @method onSend             - 发送消息前触发,可对发送数据进行加工处理
 * ======== ======== ========
 */
const Bridge = new postBridge(
  // Configure
  { namespace: `sample`, target: window.parent },

  // Handlers
  {
    // 成功建立连接时触发
    onConnect(scope) {
      console.log(scope);
    },

    // 发送消息时,响应成功或失败时触发
    onAnswer({ origin, target, timeout }) {
      if (timeout) {
        return console.error(`Response Timeout !!`);
      }
      console.log(`Send Message from ${origin} to ${target}`);
    },

    // 发送消息前触发,可对发送数据进行加工处理
    onSend(data) {
      return data;
    }
  }
);

/**
 * @name 监听消息
 * @param { string } space - 监听来自 `命名空间` 的消息
 * @param { function } action - 所监听消息的回调函数
 * ======== ======== ========
 */
Bridge.on('test', (data, origin) => {
  console.log(origin); // sample
  console.log(data.say); // hello world !!
});

/**
 * @name 发送消息
 * @param { string } space - 向 `命名空间` 发送消息
 * @param { json } data - 所发送消息的数据实体
 * ======== ======== ========
 */
Bridge.send('test', { say: `hello world !!` });
2.0.15

1 year ago

2.1.1

1 year ago

2.0.16

1 year ago

2.0.13

1 year ago

2.0.14

1 year ago

2.0.11

1 year ago

2.0.12

1 year ago

2.0.10

1 year ago

2.0.17

1 year ago

2.0.9

1 year ago

2.0.3

1 year ago

2.0.2

1 year ago

2.0.5

1 year ago

2.0.4

1 year ago

2.0.7

1 year ago

2.0.6

1 year ago

2.0.8

1 year ago

2.0.1

1 year ago

2.0.0-alpha.1

1 year ago

2.0.0

1 year ago

1.2.12

1 year ago

1.2.13

1 year ago

1.2.14

1 year ago

1.2.10

1 year ago

1.2.11

1 year ago

1.2.9

1 year ago

1.2.8

1 year ago

1.2.7

1 year ago

1.2.6

1 year ago

1.2.5

1 year ago

1.2.4

1 year ago

1.2.3

4 years ago

1.2.0

4 years ago

1.2.1

4 years ago

1.0.1

6 years ago

1.0.0

6 years ago

0.0.1

6 years ago