3

我正在接收一个 JSON 对象作为我的标记的数据源。之后,我为每个标记绑定 Click/Close 函数

Plunk:http ://plnkr.co/edit/A9IbIFpj3d9tH6z9NYjf?p=preview

    angular.forEach(tmp, function(value, key){
        
        value.onClick = function(){
            console.log("Clicked!");
            $scope.selected.show = false;
            $scope.selected = value;
            $scope.selected.show = !$scope.selected.show;
            $scope.$apply();
                            
        };
        value.CloseClick = function() {
            $scope.selected.show = false;
            console.log("CloseClicked");
            $scope.$apply();
        };
        this.push(value);
    }, $scope.markers);

然后使用Angular Google Maps在 Google Map 上绘制标记

            <ui-gmap-google-map center='map.center' zoom='map.zoom'>
                <ui-gmap-markers models="markers" fit="true" coords="'self'" click="onClick">
                </ui-gmap-markers>
                <ui-gmap-window coords="selected" show="selected.show" closeClick="closeClick"><div>aga</div></ui-gmap-window>                      
            </ui-gmap-google-map> 

但是当我点击一个标记时,onClick 函数不会触发。我是 Angular.js 的新手,但似乎我有一个问题(或者对我来说可能更糟 - 使用 JavaScript 本身),而不是 Angular Google Maps,但我不确定。谢谢你的帮助。

[更新]使用click="'onClick'"代替解决的问题click="onClick"

4

1 回答 1

4

您还可以在方法中添加括号 (),例如 click="onClick()"

于 2015-09-10T12:26:01.607 回答