Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript map.setClickable不是ionic中的函数_Javascript_Google Maps_Ionic Framework_Ionic2_Ionic3 - Fatal编程技术网

Javascript map.setClickable不是ionic中的函数

Javascript map.setClickable不是ionic中的函数,javascript,google-maps,ionic-framework,ionic2,ionic3,Javascript,Google Maps,Ionic Framework,Ionic2,Ionic3,当用户点击地图时,我想得到长时间的协调。然而,当我尝试这样做时,我得到了如下错误: \u this.map.on不是一个函数。 我也试过this.map.one,但还是遇到了同样的错误。有人能帮我吗?在地图上设置点击事件并从地图中获取lat long,该地图基于浏览器上使用的JavaScript API(非本机) 在setClickable中,我还遇到以下错误: \u this.map.setClickable不是一个函数。 这是我的密码: initMap() { this.mapIn

当用户点击地图时,我想得到长时间的协调。然而,当我尝试这样做时,我得到了如下错误:

\u this.map.on不是一个函数。

我也试过
this.map.one
,但还是遇到了同样的错误。有人能帮我吗?在地图上设置点击事件并从地图中获取lat long,该地图基于浏览器上使用的JavaScript API(非本机)

setClickable
中,我还遇到以下错误:

\u this.map.setClickable不是一个函数。

这是我的密码:

initMap() {

    this.mapInitialised = true;

    this.geolocation.getCurrentPosition().then((position) => {

      console.log("lat " + position.coords.latitude + " long " + position.coords.longitude)

      let latLng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);

      let mapOptions = {
        center: latLng,
        zoom: 15,
        mapTypeControl: false,
        mapTypeId: google.maps.MapTypeId.ROADMAP,
        clickableIcons: false,
        disableDefaultUI: true,
        zoomControl: false,
      }

      this.map = new google.maps.Map(document.getElementById("map"), mapOptions);

       var longClick = google.maps.event.MAP_CLICK;

       this.map.on(longClick, function (latLng) {

        var selectedLatLocation = latLng.lat.toString();
        var selectedLongLocation = latLng.lng.toString();

        alert(selectedLatLocation + " " + selectedLongLocation);


      });

      this.map.one(google.maps.event.MAP_READY)
      .then(() => {
        console.log('Map is ready!');

        this.map.on(google.maps.event.MAP_CLICK).subscribe(
            (data) => {
                alert("Click MAP");
            }
        );
      });
this.map.setClickable(true);

    });

  }

您在哪里设置“此”?你的意思是“这个”吗?是“这个”,我刚刚从错误中复制了它,这就是原因。请参阅更新,错误也在this.map.one和this.map.on中,相同的错误。这不是一个功能,你应该避免“这个”。问题是,这意味着函数initMap内部与所有事件处理不同。示例:在onClick函数中,这是单击的对象。这和initMapi内部的冲突我尝试在方法内部创建本地对象映射,但仍然得到了类似TypeError:map.setClickable不是@Emmanueldlay函数的错误