1.0.5 • Published 5 years ago

iframe-pmtp v1.0.5

Weekly downloads
15
License
MIT
Repository
github
Last release
5 years ago

Introduction

iframe-pmtp is a tool library to make the communication between the iframe and your web app more easier. Its full name is iframe postmessage transport protocol.

Install

npm install iframe-pmtp --save

Usage

APIs:

apiargumentsdescription
setTargetwindow objectset the default window that your request target to
addListenerkey string, your listener token callback function, your handleradd the listener to the message event
requestkey string, your request token, determines the handler when the target recieved data object, the data you want to send to the target among the request callback function (optional), the handler when the target response target window target (optional), the target your request want to send origin string (optional, default: '*'), the origin your request target should besend the request to the target
getkey string callback function (optional) target window object (optional) origin string (optional, default: '*')a request without the data arguments

Examples

Before you send some request to the window, you should add some listener to response the specified request.

import pm from 'iframe-pmtp';

pm.addListener('key', (data, res) => {
  /* you logic */
  res(/* you response data */);
  // if you do not call the res function, the request will never response
});

If you want to send request to an iframe or a parent window, you should set your actually target in the iframe-pmtp.

import pm from 'iframe-pmtp';

pm.setTarget(/* you target window object*/);
pm.request('key', { data }, res => {
  /* your response logic */
});

or

import pm from 'iframe-pmtp';

pm.request('key', { data }, res => {
  /* your response logic */
}, targetWindow);

If you just want to get some data from the target and no data sent, you should use the get function

import pm from 'iframe-pmtp';

pm.get('key', res => {
  /* your response logic */
}, targetWindow);
1.0.5

5 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago