当前位置:   article > 正文

vue-cli3.0引入高德3d动画效果方法一:_vue可视化大屏三维地图打点

vue可视化大屏三维地图打点

前言:

        因为两个方法代码量都特别大,这里分2个页面详细说一下,这个页面是方法一,包括vue-cli3.0中使用和html中使用两种示例

 

***注意:这里有想看另一种方法的童鞋请点入口:

https://blog.csdn.net/qq_41619796/article/details/102968469

 

好了。我们回到主题,分两部分来说一下项目中直接使用高德地图的,顺带说我在哪个步骤具体遇到的坑

实现效果:

一:在vue-cli3.0中使用:

实现步骤:

   1、在publicindex.html中添加一句话,引入js文件,这里的坑,记住一定加   http://

不加会报错: amap is not defined

<script src="http://webapi.amap.com/maps?v=1.4.15&key=  你申请的key   &plugin=AMap.ControlBar"></script>

2、vue.config.js中添加一个配置,configureWebpack这里可以增加jquery的,也可以添加我们地图配置的,我这里遇到的坑是,没注意到层级,导致这个配置放在了devServer: {  这里面,粗心的错误

  1. configureWebpack: {
  2. externals: {
  3. 'AMap': 'AMap' // 高德地图配置
  4. }
  5. },

3、直接贴上我的组件 gd_com_map.vue

  1. <template>
  2. <div class="box">
  3. <div id="container" style="width:1500px; height:600px"></div>
  4. </div>
  5. </template>
  6. <script>
  7. import AMap from 'AMap' // 引入高德地图
  8. export default {
  9. mounted () {
  10. this.init()
  11. },
  12. methods: {
  13. init () {
  14. let map = new AMap.Map('container', {
  15. resizeEnable: true,
  16. rotateEnable:true,
  17. pitchEnable:true,
  18. zoom: 17,
  19. pitch:80,
  20. rotation:-15,
  21. viewMode:'3D',//开启3D视图,默认为关闭
  22. buildingAnimation:true,//楼块出现是否带动画
  23. expandZoomRange:true,
  24. zooms:[3,20],
  25. center:[116.333926,39.997245]
  26. })
  27. }
  28. }
  29. }
  30. </script>

到这里步骤就结束了,在页面上是可以看到的;

二:直接在html中使用:***可以直接试试,把key换了

  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <meta name="viewport" content="width=device-width initial-scale=1.0 maximum-scale=1.0 user-scalable=0">
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  6. <title>3D地图</title>
  7. <style>
  8. body,html{ margin:0;padding:0;font:12px/16px Verdana,Helvetica,Arial,sans-serif;width: 100%;height: 100%}
  9. .container{
  10. height: 100%
  11. }
  12. </style>
  13. <script language="javascript" src="http://webapi.amap.com/maps?v=1.4.15&key=
  14. 你的高德key &plugin=AMap.ControlBar"></script>
  15. </head>
  16. <body >
  17. <div id="container" style="width:100%; height:100%;resize:both;"></div>
  18. <script language="javascript">
  19. var map;
  20. function mapInit(){
  21. map = new AMap.Map('container', {
  22. resizeEnable: true,
  23. rotateEnable:true,
  24. pitchEnable:true,
  25. zoom: 17,
  26. pitch:80,
  27. rotation:-15,
  28. viewMode:'3D',//开启3D视图,默认为关闭
  29. buildingAnimation:true,//楼块出现是否带动画
  30. expandZoomRange:true,
  31. zooms:[3,20],
  32. center:[116.333926,39.997245]
  33. });
  34. map.addControl(new AMap.ControlBar({
  35. showZoomBar:false,
  36. showControlButton:true,
  37. position:{
  38. right:'10px',
  39. top:'10px'
  40. }
  41. }))
  42. }
  43. mapInit()
  44. </script>
  45. </body>
  46. </html>

更多资料:

1、https://lbs.amap.com/api/javascript-api/example/3d/map3d   高德3d官网

2、https://blog.csdn.net/qq_24147051/article/details/84763265  另一个使用vue-amap 更加详细的大神地址

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/660873
推荐阅读
相关标签
  

闽ICP备14008679号