起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5535|回复: 4

[结贴] 高德地图第一加载出现AMapUI is not defined

[复制链接]

8

主题

18

帖子

54

积分

初级会员

Rank: 2

积分
54
QQ
发表于 2017-7-20 11:04:06 | 显示全部楼层 |阅读模式
高德地图第一加载出现AMapUI is not defined,之后刷新一下就好了,



代码如下:

8

主题

18

帖子

54

积分

初级会员

Rank: 2

积分
54
QQ
 楼主| 发表于 2017-7-20 11:04:38 | 显示全部楼层
  1. define(function(require) {
  2.         // var $ = require("jquery");
  3.         var map = require('http://webapi.amap.com/maps?v=1.3&key=07d5583f320fa1a75dbb1f3f72&plugin=AMap.Autocomplete,AMap.PlaceSearch');
  4.         var ui = require('http://webapi.amap.com/ui/1.0/main.js');
  5.         var justep = require("$UI/system/lib/justep");
  6.         var dialog = require("$UI/system/components/justep/dialog/dialog");
  7.         var Model = function() {
  8.                 this.callParent();
  9.         };
  10.         Model.prototype.modelLoad = function(event) {
  11.                 this.loadGaodeMap();
  12.         };

  13.         Model.prototype.loadGaodeMap = function() {
  14.                 var amap = this.getIDByXID("gaodeMap");
  15.                 var source = this.comp('source');
  16.                 var dest = this.comp('dest');
  17.                 dest.set({
  18.                         "value" : "请输入收货人所在地"
  19.                 });
  20.                 AMapUI.loadUI([ 'misc/PositionPicker' ], function(PositionPicker) {
  21.                         var map = new AMap.Map(amap, {
  22.                                 zoom : 16,
  23.                                 scrollWheel : false
  24.                         });
  25.                         map.plugin('AMap.Geolocation', function() {
  26.                                 source.set({"value" : "正在获取定位..."});
  27.                                 geolocation = new AMap.Geolocation({
  28.                                         enableHighAccuracy : true, // 是否使用高精度定位,默认:true
  29.                                         timeout : 10000, // 超过10秒后停止定位,默认:无穷大
  30.                                         buttonOffset : new AMap.Pixel(10, 20), // 定位按钮与设置的停靠位置的偏移量,默认:Pixel(10, 20)
  31.                                         zoomToAccuracy : false, // 定位成功后调整地图视野范围使定位位置及精度范围视野内可见,默认:false
  32.                                         buttonPosition : 'RB',
  33.                                         showMarker : false,
  34.                                         showCircle : false
  35.                                 });
  36.                                 map.addControl(geolocation);
  37.                                 geolocation.getCurrentPosition();
  38.                                 AMap.event.addListener(geolocation, 'complete', onComplete); // 返回定位信息
  39.                                 AMap.event.addListener(geolocation, 'error', onError); // 返回定位出错信息
  40.                         });
  41.                         // 解析定位结果
  42.                         function onComplete(data) {
  43.                                 source.set({"value" : data.formattedAddress});
  44.                         }
  45.                         // 解析定位错误信息
  46.                         function onError(data) {
  47.                                 source.set({"value" : "定位失败"});
  48.                         }

  49.                         var positionPicker = new PositionPicker({
  50.                                 mode : 'dragMap',
  51.                                 map : map
  52.                         });

  53.                         positionPicker.on('success', function(positionResult) {
  54.                                 source.set({"value" : positionResult.address});
  55.                         });

  56.                         positionPicker.on('fail', function(positionResult) {
  57.                                 source.set({"value" : "选取位置失败"});
  58.                         });

  59.                         var onModeChange = function(e) {
  60.                                 positionPicker.setMode(e.target.value)
  61.                         }
  62.                         positionPicker.start();
  63.                         map.panBy(0, 1);
  64.                 });

  65.         };

  66.         Model.prototype.sourceClick = function(event) {
  67.                 this.comp("sourceDialog").open({
  68.                         data : this.comp('source').get("value")
  69.                 });
  70.         };

  71.         Model.prototype.destClick = function(event) {
  72.                 this.comp("destDialog").open();
  73.         };

  74.         return Model;

  75. });
复制代码
回复 支持 反对

使用道具 举报

发表于 2017-7-20 13:43:25 | 显示全部楼层
  1.   var map = require('http://webapi.amap.com/maps?v=1.3&key=07d5583f320fa1a75dbb1f3f72&plugin=AMap.Autocomplete,AMap.PlaceSearch');
  2.         var ui = require('http://webapi.amap.com/ui/1.0/main.js');
复制代码


这里代码又没有引用变量,应该不需要赋值给变量的吧!

改成
  1. require('http://webapi.amap.com/maps?v=1.3&key=07d5583f320fa1a75dbb1f3f72&plugin=AMap.Autocomplete,AMap.PlaceSearch');
  2. require('http://webapi.amap.com/ui/1.0/main.js');
复制代码


试试行吗??

另外有可能就是环境还没初始化!需要等待初始化执行完,
AMapUI对象存在后,再调用
http://docs.wex5.com/wex5-ui-question-list-2104
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

8

主题

18

帖子

54

积分

初级会员

Rank: 2

积分
54
QQ
 楼主| 发表于 2017-7-26 08:56:52 | 显示全部楼层
谢谢了,问题已经解决了
回复 支持 反对

使用道具 举报

0

主题

1

帖子

3

积分

新手上路

Rank: 1

积分
3
QQ
发表于 2017-8-25 15:00:22 | 显示全部楼层
wwl0503 发表于 2017-7-26 08:56
谢谢了,问题已经解决了

题主,你是怎么解决这个bug的阿?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-7-7 23:47 , Processed in 0.057176 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表