/**
* 该模块用于webview之间的交互,如传参数、触发其他webview的事件<br>:
* <strong>
* 页面需要导入的文件
* <ul>
* <li>cmp-webviewListener.js</li>
* </ul>
* </strong>
* <br>
* 其原理是以H5的事件系统为基准,使用webview2来触发webview1的事件来实现webview2和webview1之间的交互;其原理图如下:<br>
* ![webview交互原理图](../../doc_cutline_img/webviewListener.png)
* @module webviewListener
* @subtitle webview交互
*/
/**
* webview交互
* @class webviewListener
*/
/**
* webview1注册交互事件
* @namespace cmp.webViewListener
* @method addEvent
* @param {String} type 注册的事件名
* @param {Function} callback webview1被触发的回调函数
* @example
* ```
* //注:微协同不支持此API
* webview1.html
*
* <script>
* cmp.webViewListener.addEvent("webview1_trigger_event",function(e){
* var data = e.data;//此data是webview2传给webview1的数据,
* //此回调函数做webview1被触发后的业务逻辑
* });
* </script>
* ```
*/
/**
* webview2触发交互事件
* @namespace cmp.webViewListener
* @method fire
* @param {Object} options 配置参数
* @param {String} options.type 触发webview1注册的事件
* @param {String|Object} options.data 触发webview1的传参
* @param {Function} options.success 成功后的回调
* @param {Function} options.error 失败后的回调
* @example
* ```
* webview2.html
*
* <script>
* cmp.webViewListener.fire({
* type:"webview1_trigger_event", //此参数必须和webview1注册的事件名相同
* data:"webview2传给webview1的参数"
* success:function(){
* //do something with result
* },
* error:function(error){
* }
* });
* </script>
* ```
*/