首页 > 解决方案 > ng-click 并不总是在传单弹出窗口中工作

问题描述

我需要在传单地图标记弹出窗口中使用 ng-click 指令。下面是我用来创建标记的代码。

$scope.doSomething = () => {
    alert('Some text');
}
    
angular.extend($scope, {
    markers : {     
        m1: {
            lat: 52, 
            lng: 21,
            message: '<button ng-click="doSomething()">Click</button>',
            getMessageScope: () => $scope,
            compileMessage: true,
            icon: {
                iconUrl: ICON_URL,
                iconSize: [29, 29]
            }
        }
    }
});

问题是 ng-click 不起作用。focus: trueng-click中的属性m1开始工作,但仅在弹出窗口关闭之前。重新打开使 ng-click 不再起作用。

经过一番挖掘,评论

//            marker.on("popupclose", function () /* event */{
//                safeApply(leafletScope, function () {
//                    markerData.focus = false;
//                });
//           });

ui-leaflet.js重新打开弹出窗口后使ng-click起作用,但在第一次打开弹出窗口时单击按钮后不执行无focus: true功能。doSomething()关闭,再次重新打开并单击按钮显示警报。

我只需要在没有focus: true.

我正在使用 ui-leaflet 2.0.0 和 angularjs 1.5.6。

有谁知道可能出了什么问题?

标签: javascriptangularjsleafletui-leaflet

解决方案


推荐阅读