/**
 * 该模块用于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>
 * ```
 */




    
Top