鱼C论坛

 找回密码
 立即注册
查看: 6414|回复: 17

[已解决]promise.then()问题

[复制链接]
发表于 2021-1-1 23:19:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 冷回清风暖 于 2021-1-2 09:07 编辑

有个错误搞不懂
55-63行
                          view_2d = new MapView({
                                map: webmap,
                                container: "viewDiv_2d"
                          }).then(function(){
                                view_2d.watch("extent",function(response){
                                        if(response){
                                                view_3d.center =response.center;
                                        }
                                });
                        });
提示:(index):19 Uncaught TypeError: (intermediate value).then is not a function
QQ截图20210101231818.jpg
代码:
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no">
  <title>Integrate 2D and 3D Views</title>

  <link rel="stylesheet" href="https://js.arcgis.com/4.7/esri/css/main.css">
  <script src="https://js.arcgis.com/4.7/"></script>

  <style>
    html,
    body {
      padding: 0;
      margin: 0;
      height: 100%;
      width: 100%;
    }
        
        #viewDiv_2d {
                float: left;                
                height: 100%;
                width: 49.9%;
        }
        
        #viewDiv_3d {
                float: right;
                height: 100%;
                width: 49.9%;                                
        }
  </style>

  <script>
    require([
        "esri/views/MapView",
        "esri/views/SceneView", 
                "esri/WebMap",
                "esri/WebScene",                
        "dojo/domReady!"
      ],
      function(
        MapView, SceneView, WebMap, WebScene
      ) {
                var view_2d,view_3d;
                create_2dView();
                create_3dView();
                
                function create_2dView() {
                          var webmap = new WebMap({
                                portalItem: {
                                  id: "08656515afaf4d0587d4f99b9909ddfc"
                                }
                          });

                          view_2d = new MapView({
                                map: webmap,
                                container: "viewDiv_2d"
                          }).then(function(){
                                view_2d.watch("extent",function(response){
                                        if(response){
                                                view_3d.center =response.center;
                                        }
                                });
                        });
                }
                
                function create_3dView() {
                          var scene = new WebScene({
                                portalItem: {
                                  id: "ae2631226f9b4883942a1d2423e29772"
                                }
                          });

                          view_3d = new SceneView({
                                map: scene,
                                container: "viewDiv_3d"
                          })                
                }
                
      });
  </script>
</head>

<body>
        <div id="viewDiv_2d"></div>
        <div id="viewDiv_3d"></div>
</body>

</html>
最佳答案
2021-1-16 21:31:24
https://www.npmjs.com/package/esri-map-view  不知道是不是这个框架,官方文档里并没有说他被promise封装
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-1-3 08:47:52 | 显示全部楼层

回帖奖励 +5 鱼币

帮顶一下,来个大佬解答一下啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-3 18:48:26 | 显示全部楼层
报错不是说了吗,.then()不是个函数,说明你前面的函数原型上没有.then方法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-4 09:10:57 | 显示全部楼层

回帖奖励 +5 鱼币

你把这个类实例出来的对象打印出来看看,看值是不是 Promise
new MapView({
                  map: webmap,
                  container: "viewDiv_2d"
               })
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-4 09:31:42 | 显示全部楼层

回帖奖励 +5 鱼币

蹭热度
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-4 11:05:19 | 显示全部楼层

回帖奖励 +5 鱼币

帮顶下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-4 17:29:39 | 显示全部楼层

回帖奖励 +5 鱼币

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-1-5 17:31:09 | 显示全部楼层

回帖奖励 +5 鱼币

帮忙顶一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-7 21:27:35 | 显示全部楼层

回帖奖励 +5 鱼币

萌新躲在角落瑟瑟发抖!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-10 21:23:10 | 显示全部楼层

回帖奖励 +5 鱼币

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-1-10 22:53:49 | 显示全部楼层
也不懂,蹭学
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-14 16:25:16 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-1-14 16:47:36 | 显示全部楼层

回帖奖励 +5 鱼币

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

头像被屏蔽
发表于 2021-1-16 21:31:24 | 显示全部楼层    本楼为最佳答案   
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-17 08:52:25 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-1-17 10:32:05 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-1-17 11:02:38 | 显示全部楼层
不懂帮顶
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-18 02:20:50 | 显示全部楼层

回帖奖励 +5 鱼币

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-23 11:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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