ThirdMessage.js
1.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
require('messenger');
import Emiter from 'Emiter';
import McuObj from 'mcu';
import Loger from 'Loger';
let loger = Loger.getLoger('ThirdMessage');
class ThirdMessage extends Emiter{
constructor(){
super();
// 初始化消息通道
this.messenger = new Messenger(ThirdMessage.IFRAME_MESSAGE_ID, ThirdMessage.PARENT_MESAGE_ID);
this.messenger.addTarget(window.parent, ThirdMessage.PARENT);
this.messenger.listen(this._reciveParentMessage.bind(this))
loger.log('ThirdMessage');
}
//发送消息给父级页面
sendMessageToParent(_msg){
//// 根据自己的业务组装对象
/* let jsonObj = {
username: 'sdk',
message: 'sdk->hello world',
}
this.messenger.send(JSON.stringify(jsonObj));*/
if(this.messenger){
loger.log('发送消息给父级页面->',_msg);
this.messenger.send(_msg);
}
}
//收到父级页面的消息
_reciveParentMessage(_msg){
loger.log('收到父级页面的的消息->', _msg);
this._emit(ThirdMessage.RECIVE_MESSAGE,_msg);
}
}
ThirdMessage.prototype.RECIVE_MESSAGE=ThirdMessage.RECIVE_MESSAGE='recive_message';
ThirdMessage.prototype.IFRAME_MESSAGE_ID=ThirdMessage.IFRAME_MESSAGE_ID='xuedianyunIframe';
ThirdMessage.prototype.PARENT_MESAGE_ID=ThirdMessage.PARENT_MESAGE_ID='ParentMessengerChannel';
ThirdMessage.prototype.PARENT=ThirdMessage.PARENT='parent';
export default ThirdMessage;