apply的用法

/**
 * 渲染网点
 * @param  {Object} map      地图实例对象
 * @param  {Array} stations 网点数据(包含围栏数据)
 * @param  {Object} config   设置:
 *                           {
                                renderStationScope: Boolean, 是否渲染全部网点围栏
                                showStationScopeOnClick: Boolean, 是否点击网点时渲染该网点围栏
                                context: Object, 事件上下文指向
                                onClickInfoWindow: Function, 点击网点回调函数
                              }
 * @return {Promise}          resolve markerList实例
 */
            // 点击marker弹出infowindow的回调
            if (config.context && config.onClickInfoWindow) {
              config.onClickInfoWindow.apply(context, [data])
            }

为什么要加一个apply
因为使用回调的时候如果不是箭头函数会出现this指向问题, 加上apply可以调用全局方法和数据

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容