dojo的API功能介绍
文章目录
- 一、dojo常见API
- 1、dojo/_base/declare
- (1)作用:该模块用于声明一个类,类似于js 的class的作用。
- (2)用法:declare(className, superClass, properties)
- (3)案例
- (4)参考链接
- 2、dojo/_base/lang
- (1)作用:就是一个扩展模块,提供了一些有用的方法
- (2)用法:部分函数说明
- (3)案例
- (4)参考链接
- 3、dojo/_base/array
- (1)作用:封装了数组中的一些方法。类似于JS当中数组
- (2)用法:跟JS的数组的方法使用类似
- (3)案例
- (4)参考链接
- 4、dojo/_base/html
- (1)作用:封装了dojo中有关dom操作的方法
- (2)用法:部分函数说明
- (3)案例
- (4)参考链接
- 5、dojo/Deferred
- (1)作用:是一个类,管理异步线程的基础。其实是更棒的promis的实现
- (2)用法:先定义一个对象,然后调用对象的方法
- (3)案例
- (4)参考链接
- 6、dojo/topic
- (1)作用:发布订阅者模式,类似于vue的eventbus
- (2)用法:
- (3)案例
- (4)参考链接
- 7、dojo/dom(DOM相关)
- (1)作用:封装了对dom的使用方法
- (2)用法:
- (3)案例
- (4)参考链接
- 8、dojo/on
- (1)作用:事件绑定问题,类似于JS的事件监听
- (2)用法:on(element,event.name,handler)
- (3)案例
- (4)参考链接
- 9、dojo/aspect
- (1)作用:在目标对象的某方法 执行后/执行钱/拦截 执行一个函数
- (2)用法:before、after、around三个方法
- (3)案例
- (4)参考链接
- 10、dojo/query(DOM相关)
- (1)作用:组合了js原生dom获取以及处理的操作。
- (2)本义:是根据一定的条件查询并获取某些 HTML 元素的引用,然后对这些元素进行操作以改变它们的属性、外观等。
- (3)案例
- (4)参考链接
- 11、dojo/dom-construct(DOM相关)
- (1)作用:该模块定义了核心 dojo DOM 构建 API。
- (2)用法:
- (3)案例
- (4)参考链接
- 12、dojo的DOM操作、query操作和domConstruct元素位置操作
- 13、dojo/_base/event
- (1)作用:包含用于管理 DOM 事件的遗留 API,已被弃用。为了处理 DOM 事件,您应该使用dojo/on代替。
- (2)参考链接
- 14、dojo/request
- (1)作用:类似于axios,发送网络请求的包
- (2)用法:
- (3)案例
- (4)参考链接
- 15、dojo/_base/fx
- (1)作用:包含基本的动画功能。
- (2)参考链接
一、dojo常见API
1、dojo/_base/declare
(1)作用:该模块用于声明一个类,类似于js 的class的作用。
(2)用法:declare(className, superClass, properties)
className:类名,有省略写法
superClass:继承的父类,一般为null
properties:对象(js中的prototype(原型对象),用于创建类时的继承)
(3)案例
// 常用写法,省略类名
var myclass=declare(null,{// 可以定义属性,// 可以定义方法,// 可以定义constructor:
});// 不常用写法
declare("myclass",null,{// 同上
});
(4)参考链接
declare使用详解:https://blog.csdn.net/cexo425/article/details/19119737
2、dojo/_base/lang
(1)作用:就是一个扩展模块,提供了一些有用的方法
(2)用法:部分函数说明
clone(对象):克隆任何对象或者元素节点,返回:一个新的对象。
hitch(新的对象,执行函数):会在给定的上下文中执行给定一个执行函数。类似于JS的apply/call/bind改变this指向。
(3)案例
// 像下文这种异步回调函数的应用场景,当代码正在执行时,上下文会发生变化。执行上下文环境已经不再是最初提供的对象,而指向了外部对象(on的回调函数),为了解决这个问题,你可以使用hitch()去强制processEvent在此时“this”指向的上下文来执行。
require(["dojo/on", "dojo/_base/lang"], function(on, lang){var processEvent = function(e){this.something = "else";};on(something, "click", lang.hitch(this, processEvent));
});
(4)参考链接
dojo/_base/lang其他函数方法参考:https://blog.csdn.net/weixin_33725272/article/details/86043646
dojo/_base/lang --hitch()函数详解:https://blog.csdn.net/long_chuanren/article/details/83896948
3、dojo/_base/array
(1)作用:封装了数组中的一些方法。类似于JS当中数组
(2)用法:跟JS的数组的方法使用类似
(3)案例
require(["dojo/_base/array"],function(arrayUtil){var arr= ['apple','orange','banana'];arrayUtil.forEach(arr,function(item,index){console.info("item:"+item+";index:"+index)});
});
(4)参考链接
dojo/_base/array数组方法使用参考:https://blog.csdn.net/wenjinglala/article/details/52837322
4、dojo/_base/html
(1)作用:封装了dojo中有关dom操作的方法
(2)用法:部分函数说明
dojo.byId:等效于document.getElementById
(3)案例
// dojo.byId已弃用,可用dojo/dom代替
require ([ "dojo/dom" ], function ( dom ){ // 通过 id="someNode" 获取节点var node = dom . byId ( "someNode" );
});
(4)参考链接
dojo/_base/html使用参考:https://dojotoolkit.org/reference-guide/1.10/dojo/_base/html.html
5、dojo/Deferred
(1)作用:是一个类,管理异步线程的基础。其实是更棒的promis的实现
(2)用法:先定义一个对象,然后调用对象的方法
(3)案例
require(['dojo/Deferred'],function(Deferred){var deferred = new Deferred();deferred.then(function(result){console.log("success"+result+'\t'+Date());console.log("isResolved="+deferred.isResolved());console.log("isFulfilled="+deferred.isFulfilled());},function(err){console.log("error"+err+'\t'+Date());},function(progress){console.log("progress"+progress+'\t'+Date());})setTimeout(function(){deferred.progress(1);},1000);setTimeout(function(){deferred.progress(2);},2000);setTimeout(function(){deferred.progress(3);},3000);setTimeout(function(){deferred.resolve("ok");},3001);//等待异步操作回调函数执行过程中下面的代码会同时执行console.log("isResolved="+deferred.isResolved());console.log("isFulfilled="+deferred.isFulfilled());})
(4)参考链接
dojo/Deferred使用参考:https://blog.csdn.net/shiyangxu/article/details/81904551
dojo/Deferred类和dojo/promise类的使用:
https://blog.csdn.net/weixin_30685029/article/details/97435123
6、dojo/topic
(1)作用:发布订阅者模式,类似于vue的eventbus
(2)用法:
topic.subscribe:
用于订阅消息,接收两个参数,第一参数为要订阅的消息名字(唯一标识),如"socket/msg_arrive",第二参数为回调函数。
topic.publish:
用于发布消息,接收任意多个参数,第一参数为要发布的信息名字(唯一标识),如"socket/msg_arrive",其他参数为传递给订阅回调函数的参数。
(3)案例
require(["dojo/topic", "dojo/dom", "dojo/on", "dojo/domReady!"],
function(topic, dom, on){var handle = topic.subscribe("some/topic", function(e){dom.byId("output").innerHTML = "I received: " + e.msg;handle.remove();});on(dom.byId("publish"), "click", function(){topic.publish("some/topic", { msg: "hello world" });});
});
(4)参考链接
dojo/topic使用参考:https://blog.csdn.net/notejs/article/details/8745735
dojo/topic使用参考:https://blog.csdn.net/idomyway/article/details/84945377
7、dojo/dom(DOM相关)
(1)作用:封装了对dom的使用方法
(2)用法:
- dojo/dom模块
- dojo/dom-construct模块
- dojo/dom-attr模块
- dojo/dom-prop模块
- dojo/dom-class模块
- dojo/dom-style模块
- dojo/dom-form模块
(3)案例
require([ "dojo/dom" , "dojo/domReady!" ], function (dom) {function setText(node, text){node = dom.byId(node);//通过已有对象node.innerHTML = text;}var one = dom.byId( "one" );//通过字符串setText(one, "One has been set" );setText( "two" , "Two has been set as well" );
});
(4)参考链接
dojo/dom使用参考:https://blog.csdn.net/shiyangxu/article/details/81433223
8、dojo/on
(1)作用:事件绑定问题,类似于JS的事件监听
(2)用法:on(element,event.name,handler)
(3)案例
require(["dojo/on", "dojo/dom","dojo/domReady!"],function(on, dom) {//获得dom元素var btn= dom.byId("btn")//给DOM元素绑定事件on(btn, "click", function(evt){alert("按钮被点击了"); });
})
(4)参考链接
dojo/on使用参考:https://blog.csdn.net/LoveCarpenter/article/details/54728455
9、dojo/aspect
(1)作用:在目标对象的某方法 执行后/执行钱/拦截 执行一个函数
(2)用法:before、after、around三个方法
(3)案例
// 参考链接的内容
(4)参考链接
dojo/aspect使用参考:https://blog.csdn.net/notejs/article/details/8745685
10、dojo/query(DOM相关)
(1)作用:组合了js原生dom获取以及处理的操作。
(2)本义:是根据一定的条件查询并获取某些 HTML 元素的引用,然后对这些元素进行操作以改变它们的属性、外观等。
(3)案例
// 参考链接
(4)参考链接
dojo/query介绍及使用参考:https://blog.csdn.net/dragonzoebai/article/details/8548209
dojo使用query dojo/query参考:https://blog.csdn.net/qq_36330643/article/details/72356823
11、dojo/dom-construct(DOM相关)
(1)作用:该模块定义了核心 dojo DOM 构建 API。
(2)用法:
domConstruct.toDom():用来将html标签字符串转化成DOM节点。
domConstruct.place():将现有节点放置在 HTML 文档中的某个位置
domConstruct.create():创建DOM节点
domConstruct.empty():清空 DOM 元素的内容。删除所有子节点,但将节点保留在那里。
domConstruct.destroy():删除所有子节点和节点本身
(3)案例
// 参考链接
(4)参考链接
dojo/dom-construct使用参考:https://dojotoolkit.org/reference-guide/1.10/dojo/dom-construct.html
12、dojo的DOM操作、query操作和domConstruct元素位置操作
参考链接:https://blog.csdn.net/weixin_30588827/article/details/96963208
13、dojo/_base/event
(1)作用:包含用于管理 DOM 事件的遗留 API,已被弃用。为了处理 DOM 事件,您应该使用dojo/on代替。
(2)参考链接
dojo/_base/event使用参考:https://dojotoolkit.org/reference-guide/1.10/dojo/_base/event.html
14、dojo/request
(1)作用:类似于axios,发送网络请求的包
(2)用法:
dojo/request/xhr:get()、post()、put()、del()等常规请求
dojo/request/script:可以向服务器发送跨域请求。script.get( url, option )
(3)案例
// 参考链接
(4)参考链接
dojo/request官方使用参考:https://dojotoolkit.org/reference-guide/1.10/dojo/request.html
15、dojo/_base/fx
(1)作用:包含基本的动画功能。
(2)参考链接
dojo/_base/fx官方使用参考:https://dojotoolkit.org/reference-guide/1.10/dojo/_base/fx.html
dojo/_base/fx 和 dojo/fx:https://blog.csdn.net/weixin_34392906/article/details/86043403
dojo的API功能介绍相关推荐
- Swift相关api功能介绍与使用
一. 将Protocol的方法声明为mutating Swift的协议不仅可以被class类型实现,也适用于struct和enum, 因为这个原因在写给别人用的协议时需要考虑是否使用mutating来 ...
- Java SE 8新功能介绍:使用Streams API处理集合
使用Java SE 8 Streams的代码更干净,易读且功能强大..... 在" Java SE 8新功能介绍"系列的这篇文章中,我们将深入解释和探索代码,以了解如何使用流遍历集 ...
- 关于线上API聚合支付系统的功能介绍,为什么选择聚合支付?
一个完善的聚合支付系统,拥有支付网关.主动对账.退款网关.支付/退款状态查询等功能模块.关于线上API聚合支付系统功能,今天就在这和大家简单地介绍一下,另外它的优势何在,也是现在的商家都选择聚合支付的 ...
- HiCar基本功能介绍
HiCar基本功能介绍 基本概述 一方面,基于操作系统超强的分布式能力,HUAWEI HiCar通过手机和汽车之间的连接,基于三层标准与能力,构建手机和汽车互助资源池,把手机的服务生态延伸到车内,实现 ...
- 2021年大数据Flink(三十):Flink Table API SQL 介绍
目录 Table API & SQL 介绍 为什么需要Table API & SQL Table API& SQL发展历程 架构升级 查询处理器的选 ...
- Istio所有模块、Service、Pod的功能介绍
[TOC] Istio所有模块.Service.Pod的功能介绍 Istio模块 Proxy(Envoy) 流量代理,不可缺少 Pilot 服务发现.流量管理.智能路由等 Mixer 遥测相关 Cit ...
- TypeScript 3.0 新功能介绍(二)
2019独角兽企业重金招聘Python工程师标准>>> 转载 TypeScript 3.0 新功能介绍(二) TypeScript 3.0 新功能介绍(二) New unknown ...
- 鸿蒙os2.0系统什么时候,鸿蒙OS 2.0beta什么时候发布 鸿蒙OS2.0功能介绍
鸿蒙OS 2.0beta什么时候发布呢?华为发布了面向全场景的分布式操作系统 HarmonyOS 2.0,宣布年底面向开发者发布智能手机 Beta 版本,下面就让小编给大家介绍一下. 鸿蒙OS 2.0 ...
- 【Go API 开发实战 1】该教程所实现的 API 功能
本教程所实现的 API 功能 本教程通过实现一个账号系统,来演示如何构建一个真实的 API 服务器,构建方法和技术是我根据之前的服务器开发经验不断优化沉淀而成.通过实战展示了 API 构建过程中各个流 ...
- 阿里云Aliplayer高级功能介绍(一):视频截图
基本介绍 H5 Video是不提供截图的API的, 视频截图需要借助Canvas,通过Canvas提供的drawImage方法,把Video的当前画面渲染到画布上, 最终通过toDataURL方法可以 ...
最新文章
- ​DeepMind Nature发文:AI首次实现数学领域的重大进展
- 三个事件同步实现双相机同步WaitForMultipleObjects
- 每日一皮:一个悲伤的事实,元
- 实验六JDBC数据库操作_JAVA
- 制定规则者与打破规则者
- nodejs全局安装和本地安装的区别
- ie9怎么开兼容模式
- 论文浅尝 - ICLR2022 | OntoProtein:融入基因本体知识的蛋白质预训练
- ERDAS IMAGINE 2015安装步骤(绝对正确,不正确,我给你远程安装)
- 深度学习(五十二)变分贝叶斯自编码器(下)
- 易实战Spring Boot 2 资源汇总 从入门到精通 内含实战github代码 毫无保留分享
- 软件工程实践——软件评测
- sublime中PyV8问题
- HTML 语法练习---常见标签
- 2022-01-08:数组中只有0和1,每过1代,0旁边只有1个1,当前0会变成1。每过1代,0旁边有2个1,当前0还是0。 比如10001,经过1代,会变成11011,再过1代,还是11011 。
- Xshell 6免费安装
- opencv实战3-处理图像的颜色
- 2004年9月全国计算机等级考试二级C语言笔试试题
- 1bit和1byte_带宽单位是位(bit)网速单位是字节(Byte)1字节等于8位
- 3dsmax2020安装教程