<template>
  <view>
    <cu-custom bgColor="bg-gradual-blueness" :isBack="true">
      <block slot="backText">返回</block>
      <block slot="content">位置定位</block>
    </cu-custom>
    <web-view id="webview" :src="url" @message="messageChange"></web-view>
  </view>
</template>

<script>


import gcoord from '@/components/gcoord.js'

export default {
  components: {},
  data() {
    return {
      url: '',
      longitude: '',
      latitude: ''
    }
  },
  async onLoad(option) {
    // this.longitude = 119.67751
    // this.latitude = 39.92596
    var userWeizhi = await this.getUserAppZuobiao()
    this.longitude = userWeizhi[0]
    this.latitude = userWeizhi[1]
    this.init();
    const eventChannel = this.$scope.eventChannel; // 兼容APP-NVUE
    // 监听acceptDataFromOpenerPage事件，获取上一页面通过eventChannel传送到当前页面的数据
    eventChannel.on('acceptDataFromOpenerPage', function (data) {
      console.log(data)
    })
  },

  onBackPress(options) {
    return false;
  },

  onUnload() {
  },

  onShow() {

  },
  methods: {
    goBack() {
      uni.navigateBack()
    },
    saveData() {

    },
    init() {
      this.url = ('/hybrid/html/newMap.html?longitude=' + this.longitude + '&latitude=' + this.latitude + 't=' + new Date().getTime());
      console.log(this.url);
    },
    messageChange(e) {
      console.log("messageChange");
      console.log(e);
      uni.setStorageSync("info", e.detail.data[0]);
      const eventChannel = this.$scope.eventChannel; // 兼容APP-NVUE
      console.log(eventChannel)
      eventChannel.emit('acceptDataFromOpenedPage', {data: e.detail.data[0]});
      uni.navigateBack();
    },
    getUserAppZuobiao() { //获取手机坐标信息
      return new Promise((resolve, reject) => {
        uni.getLocation({
          type: 'GCJ02',
          success: function (res1) {
            this.longitude = res1.longitude;
            this.latitude = res1.latitude;
            var result = gcoord.transform(
                [this.longitude, this.latitude],    // 经纬度坐标
                gcoord.GCJ02,               // 当前坐标系
                gcoord.BD09                // 目标坐标系
            );
            resolve(result);
          },
          fail: function (res) {
            uni.hideLoading();
            uni.showToast({
              title: "获取位置失败",
              duration: 2000
            });
            reject(['119.67751', '39.92596']);
          }
        });
      })
    }
  }
}
</script>


<style scoped>

page,
uni-page-body,
.container {
  background: rgba(245, 245, 245, 1);
  min-height: calc(100%);
}

</style>
