首页
学习
活动
专区
圈层
工具
发布

使用现代化的脚本进行 ArcGIS JS API 开发

; ArcGIS JS API 提供 AMD 模块严重依赖 dojo 的加载器, 无法在 ES6 的环境中直接使用; dojo 的入侵性比较强, 很容易和其它的框架发生冲突; 由于以上几点原因, 导致...使用 esri-loader 加载 ArcGIS JS API esri-loader 提供了 loadScript 函数, 来加载 arcgis-js-api 的初始化脚本, 这个函数的定义如下: export...} catch (ex) { console.error('Failed to load ArcGIS JS SDK', ex); } } 使用 async/await 结合 try-catch...加载 ArcGIS JS API 中提供的模块 要使用 ArcGIS JS API 中提供的模块, 根据 ArcGIS JS API 提供的文档, 需要使用 dojo 提供的 require 函数, 示例代码如下...使用 ES6+ 脚本进行 ArcGIS JS API 开发 如果目标浏览器不包括 IE11 的话, 则可以放心的使用 async/await 和 import 等这些 JavaScript 最新的功能,

3.1K10

使用Ionic React实现的无限滚动效果

安装过程查看官网文档或者 https://www.npmjs.com/package/@ionic/react 来查看 使用以下命令来创建一个项目 ionic start infiniteScroll...IonTitle>Tab One {items.map...所以,在使用的过程中,很有可能会有重复的“狗狗”。 加载初始数据 Ionic 提供了我们可以在应用程序中使用的多个生命周期事件,它不仅为标准组件库提供了这类事件,也同样为功能组件提供了类似事件。...(async () => { await fetchData(); }); }; 无限滚动 所以现在,我们要来实现无限滚动,首先,添加一个新的功能,该功能将帮助我们获取新的数据并且告诉滚动器该操作已经完成了...async function searchNext($event: CustomEvent) { await fetchData(); ($event.target as HTMLIonInfiniteScrollElement

4.9K60
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Typescript Target ESNext

    好端端的为什么要使用 ESNext ? 因为我有一些需求,需要在顶级使用 await 表达式。...但是 await 表达式是只能包含在 async 函数中,这就导致了很多的不便,再加上这种写法也并非优雅↓ let data = '' ;( async () => { data...xxx 此时如果使用自执行函数会导致无法导出,包括 设置 package.json 的 "type": "module" 等都会报错 在 https://www.alinalihassan.com/blog.../top-level-await-typescript 中记载,使用 ESNext 可以使用顶级 await 表达式 将 tsconfig.json 的 module 字段修改为 esnext ,同时也修改...本人没有使用 ncc 尝试,如果 ncc 打包后可以正常使用,那么本人更赞成原有的导入方法 参考文献 https://www.litf.com.cn/p/18 https://juejin.cn/post

    1.2K10

    怎样编写更好的 JavaScript 代码

    无法无天-主演:shia lebouf 电影:无法无天,主演 shia lebouf Typescript 类型,可以重构更大的程序 重构大型 JS 程序是一场真正的噩梦。...为了解决这个问题,ECMAScript 委员会决定添加一种利用 promise,async 和 await 的新方法: async 和 await try { const result = await...await 一个 Promise,因为 async 函数实际上只是一个花哨的 Promise 包装器。...这也意味着,async/await 代码和 Promise 代码在功能上是等价的。所以随意使用 async/await 并不会让你感到不安。...map 和 forEach 之外还有其他有效的异步选择,例如 for-await-of。 Lint 你的代码并强制使用一致的风格 没有一致风格的代码难以阅读和理解。

    2.1K30

    Puppeteer:从零出发,全面掌握浏览器自动化神器

    运行环境: Node 18+,Puppeteer 遵循 Node 最新维护的 LTS 版本; 如果要使用 TypeScript,需要安装 TypeScript 4.7.4 +; 可以在 Windows...但是如果定位器 API 无法满足时仍可以使用低级别的 API,如:page.waitForSelector() 或 ElementHandle。...,可使用 setTimeout() 函数适当延长,超时时将抛出 TimeoutError 异常。...获取元素值或 ElementHandle : // 使用 map 函数将元素映射为 JavaScript 值,调用 wait() 将返回序列化的 JavaScript 值 const enabled =...禁用无头模式:可以查看浏览器显示的内容,主观的观察内容变化; 延长执行时间:通过延长执行时间来观察正在发生的情况; 启用浏览器调试:调试时会自动启动开发者工具; 打印浏览器日志:启用后可以接管浏览器意外崩溃或无法正常启动时的日志信息

    7.6K11

    不使用回调函数的ajax请求实现(async和await简化回调函数嵌套)

    要实现这种写法必须使用async和await这两个关键字。...在两个关键字是es7的范畴, es6还不支持,但是可以通过特定的工具将使用这两个关键字的代码转为es6的代码去执行, 比如说typescript和babel, 在此文中使用的代码示例都是由typescript...所以,使用async和await的第一个要点就是 当函数要获得异步结果时,可以函数声明为async类型, 函数的返回值设为Promise类型对象,而Promise中的resolve和reject是用来向...async类型函数要怎么使用呢?...有一点需要注意, 假如需要在函数中使用await调用,那么这个函数也必须被声明为async类型, 否则编译出错, 程序无法正常运行。

    4.3K50

    几年后的 JavaScript 会是什么样子?

    在过去 JavaScript 中一直缺乏负索引相关的支持,比如获取数组的最后一个成员需要使用arr[arr.length-1],而无法使用arr[-1]。...对 TypeScript 使用者来说可能没什么感觉,因为在 JavaScript 中写 Class 越来越少了。...Top-level await (stage4) proposal-top-level-await这个提案感觉就没有啥展开描述的必要了,很多人应该已经用上了。...简单地说,就是你的 await 语法不再和 async 强绑定了,你可以直接在应用的最顶层使用 await 语法而不再需要套一个 async 函数,NodeJS也从 14.8 开始支持了这一提案。...await/yield标识继承自上下文 对于异步版本的do expression,存在一个尚未进入的提案proposal-async-do-expressions,旨在允许使用async do {}的语法

    1.4K30
    领券