NutzCN Logo
问答 nutzwk3.3集成jsapi进行地图开发时报错
发布于 8天前 作者 qq_1a7af3fa 109 次浏览 复制 上一个帖子 下一个帖子
标签: nutzwk

用arcgis api for javascript进行地图开发,从公共页面platform.html页面引入,如下:

<link rel="stylesheet" type="text/css" href="http://localhost/arcgis_js_api/library/3.16/3.16/dijit/themes/tundra/tundra.css"/>
    <link rel="stylesheet" type="text/css" href="http://localhost/arcgis_js_api/library/3.16/3.16/esri/css/esri.css" />
    <script type="text/javascript" src="http://localhost/arcgis_js_api/library/3.16/3.16/init.js"></script>

引入之后可能是顺序问题,导致报很多错误,但是经过多次调整引入顺序还是没能解决,错误有:
①:项目中原来引入的js插件部分失效了,页面效果消失了;
②:

Uncaught TypeError: Cannot read property 'addValidator' of undefined
    at HTMLDocument.<anonymous> (parsley.zh_cn.js:35)
    at i (jquery.js:2)
    at Object.fireWith [as resolveWith] (jquery.js:2)
    at Function.ready (jquery.js:2)
    at HTMLDocument.K (jquery.js:2)

③:

init.js:31 Error: multipleDefine
    at d (init.js:5)
    at Ja (init.js:27)
    at init.js:28
    at a (init.js:5)
    at Xa (init.js:28)
    at g (init.js:25)
    at HTMLScriptElement.<anonymous> (init.js:30)
(anonymous) @ init.js:31

④:

/arcgis_js_api/library/3.16/3.16/jquery.js Failed to load resource: the server responded with a status of 404 (Not Found)

经过长时间尝试,还是解决不了,请问各位大神,这是什么原因呢?有人遇到过吗?

14 回复

引入之后,一个奇怪的问题:会去init.js文件目录下加载jquery文件。但是其他开发框架或不用框架的时候不会出现这个问题。

应该和js加载顺序有关吧,setTimeout 延迟500ms初始化试试

首先感谢回复!!
我的环境配置是没问题的,但是页面中只要引用jsapi的init.js就会报错,其他表单验证js和toast.js失效了。

把js引用放到 platform.html 里调整顺序,找出和哪个js冲突

经过长时间折腾,还是没好。不引入Arcgis Api for js的init.js的时候,啥事没有,功能都正常。一引入之后便出现一些奇奇怪怪的问题,引入的位置不同,引发的错误现象也不同:bootstrap.js模态框也不正常了、toast.js提示框也冲突、表单验证也失效了......崩溃。

@qq_1a7af3fa 跨域问题么,为什么要 http://localhost/ 引入呢?

jsapi开发包总共50多M,需要部署在本地或者直接调用在线服务。在线服务需要联网才能访问,所以我是离线部署的,项目中引入即可,就会去服务器目录下加载。

跨域了吧

不是跨域的问题,以前做过很多成功案例,而且真实项目环境里也有这样搞的。我觉得是冲突问题,某些属性或方法重复定义了。

jquery版本差异?

我们组开发组长正在帮我解决,发现加载时加载了两次,导致报重复定义错。

问题已得到解决,问题主要有:
①:toast.js中有一段代码是加载资源的,将其注释掉,手动加载到页面中;
然后调整js资源位置;所有js引用都放在jquery下面。
②:页面中掉jquery函数时一定要统一放在:
$(document).ready(function(){
........让页面加载完后,再调用方法。
})

再次感谢回复。

添加回复
请先登陆
回到顶部