dojo框架和arcgis for js api在同一个页面如何调用?

AndroidStudy2018 2019-01-14 08:54:00
1. 一个页面,布局为上部,左部和中间的常见格局,用到了
<script src="../dojo-release-1.14.2/dojo/dojo.js" djConfig="parseOnLoad: true"></script>
其中布局用的是 dijit/layout/BorderContainer
如果仅仅是这样,页面布局可以正常显示。

2. 如果一个页面,只放arcgis for js api,引入esri的地图,也正常显示
<script type="text/javascript" src="localhost/arcgis_js_v410_sdk/arcgis_js_api/library/4.10/init.js"></script>


3.可是,当我想把地图放在框架页面的中间时,也就是把2放在1的中间时
页面地图和框架布局都显示不出来,而且控制台报错:
dojo.js:8 Uncaught TypeError: _5d is not a function

我网上搜了一下,有说是引入了两个js,后面的代码不知道找那个js去了。但是又没给解决方法,这个该怎么处理呢?

有懂行的吗
...全文
248 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
讨厌走开啦 2019-01-16
  • 打赏
  • 举报
回复
引用 4 楼 AndroidStudy2018 的回复:
[quote=引用 3 楼 讨厌走开啦 的回复:] 你打开你的dojo.js和init.js,看看是不是压缩的,是的话,找到对应的未压缩版本替换上去就可以了。
找了一天,没找到未压缩版本哪里有。 这几个js都是官网整个文件包下载下来的。 去官网找了也没找到哪里有未压缩版(或者我没看懂哪个是未压缩版)。 [/quote] 找不到这个我没办法啊,我只能告诉你问题可能是因为压缩导致的。
AndroidStudy2018 2019-01-16
  • 打赏
  • 举报
回复
引用 3 楼 讨厌走开啦 的回复:
你打开你的dojo.js和init.js,看看是不是压缩的,是的话,找到对应的未压缩版本替换上去就可以了。


找了一天,没找到未压缩版本哪里有。
这几个js都是官网整个文件包下载下来的。
去官网找了也没找到哪里有未压缩版(或者我没看懂哪个是未压缩版)。
讨厌走开啦 2019-01-15
  • 打赏
  • 举报
回复
你打开你的dojo.js和init.js,看看是不是压缩的,是的话,找到对应的未压缩版本替换上去就可以了。
AndroidStudy2018 2019-01-15
  • 打赏
  • 举报
回复
引用 1 楼 讨厌走开啦 的回复:
[quote=引用 楼主 AndroidStudy2018 的回复:] 1. 一个页面,布局为上部,左部和中间的常见格局,用到了 <script src="../dojo-release-1.14.2/dojo/dojo.js" djConfig="parseOnLoad: true"></script> 其中布局用的是 dijit/layout/BorderContainer 如果仅仅是这样,页面布局可以正常显示。 2. 如果一个页面,只放arcgis for js api,引入esri的地图,也正常显示 <script type="text/javascript" src="localhost/arcgis_js_v410_sdk/arcgis_js_api/library/4.10/init.js"></script> 3.可是,当我想把地图放在框架页面的中间时,也就是把2放在1的中间时 页面地图和框架布局都显示不出来,而且控制台报错: dojo.js:8 Uncaught TypeError: _5d is not a function 我网上搜了一下,有说是引入了两个js,后面的代码不知道找那个js去了。但是又没给解决方法,这个该怎么处理呢? 有懂行的吗
2个js在压缩的时候压出了同名的对象,后引入的js里会覆盖前引入js的同名对象。 解决方法: 1.引用源文件,不要引压缩文件; 2.如果非要压缩,用webpack这样的构建工具来统一做。[/quote] 老大,引用源文件怎么操作?能给个例子吗,不懂啊 像我这样引入的两个js,该怎么写呢
讨厌走开啦 2019-01-14
  • 打赏
  • 举报
回复
引用 楼主 AndroidStudy2018 的回复:
1. 一个页面,布局为上部,左部和中间的常见格局,用到了 <script src="../dojo-release-1.14.2/dojo/dojo.js" djConfig="parseOnLoad: true"></script> 其中布局用的是 dijit/layout/BorderContainer 如果仅仅是这样,页面布局可以正常显示。 2. 如果一个页面,只放arcgis for js api,引入esri的地图,也正常显示 <script type="text/javascript" src="localhost/arcgis_js_v410_sdk/arcgis_js_api/library/4.10/init.js"></script> 3.可是,当我想把地图放在框架页面的中间时,也就是把2放在1的中间时 页面地图和框架布局都显示不出来,而且控制台报错: dojo.js:8 Uncaught TypeError: _5d is not a function 我网上搜了一下,有说是引入了两个js,后面的代码不知道找那个js去了。但是又没给解决方法,这个该怎么处理呢? 有懂行的吗
2个js在压缩的时候压出了同名的对象,后引入的js里会覆盖前引入js的同名对象。 解决方法: 1.引用源文件,不要引压缩文件; 2.如果非要压缩,用webpack这样的构建工具来统一做。

87,997

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧