export default {
/**
* 向主页面传递参数
* @param {String} message
* @param {String} key
*/
emitParentMessage(key, message) {
window.parent.postMessage({ [key]: message }, '*')
},
/**
* 向子页面传递参数
* @param {String} message
* @param {String} key
*/
emitChildrenMessage(key, message, index) {
window.frames[index].postMessage({ [key]: message }, '*')
},
/**
* 监听获取参数
* @returns {callback}
*/
onMessage(key, callback) {
window.addEventListener(
'message',
function(e) {
if (key && e.data[key]) {
callback(e.data)
}
},
false
)
},
/**
* 判断 是否被 ifame 嵌套
* true 表示未被嵌套, false 表示已被嵌套
* @returns {boolean}
*/
isWithinOrOuter() {
return window.self === window.top
}
}