javascript - 如何使用 Angular $on 将变量传递给命名函数?

标签 javascript angularjs

我创建了以下监听器:

scope.$on('location', updateMap)

这非常有效,但现在 updateMap 需要采用一个变量:

function updateMap(request){
...
}

我需要传递变量请求:

var request = {
    origin: origin, 
    destination: new_destination,
    travelMode: google.maps.DirectionsTravelMode[attrs.type],
};

如何将变量请求传递给指定函数?

最佳答案

广播/发出事件的工作是将参数发送给监听器,因此:

scope.$broadcast('location', request);
scope.$emit('location', request);

或者,如果您想使用参数调用 updateMap,您只需在监听器函数中调用它即可:

scope.$on('location', function() {
 updateMap(request);
});

关于javascript - 如何使用 Angular $on 将变量传递给命名函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22864190/

相关文章:

javascript - 从服务器下载文件并在angularjs中给出文件名

javascript - 引用错误: $ is not defined function error

javascript - Angular $http.query 使用数组作为参数?

javascript - Overflow-y 不适用于 ng-repeat

javascript - Angular 在函数启动后注入(inject)模块

javascript - 如何与 HTML 同时加载 Javascript

javascript - Bootstrap 3 - 折叠时自定义导航栏相对于品牌/ Logo 的位置

javascript - Azure Node.js 应用服务 - 创建自定义 promise

javascript - AngularJS 可以做到这一点吗?

javascript - 当 DOM 中的元素太多时,Angular ng 类性能问题