当前位置 : 主页 > 网页制作 > Dojo >

dojo 基础方法介绍

来源:互联网 收集:自由互联 发布时间:2021-06-15
1、 dojo.data var dataStore = new dojo.data.ItemFileReadStore({ url: dojo.moduleUrl("dojox.geo.charting", "tests/datastore/dataStore.json").uri//来获取具体的uri地址 }); map.setDataStore(dataStore, { product: "A" }); Dojo Data 提供了

1、 dojo.data

    var dataStore = new dojo.data.ItemFileReadStore({
        url: dojo.moduleUrl("dojox.geo.charting", "tests/datastore/dataStore.json").uri//来获取具体的uri地址
    });
    map.setDataStore(dataStore, {
        product: "A"
    });
Dojo Data 提供了现成的存储库 dojo.data.ItemFileReadStore 用来读取和解析 JSON 格式的数据
Dojo Data 同时也提供了存储库 dojox.data.XmlStore 来处理 XML 格式的数据

 2、 dojo.moduleUrl(module,url)

     在模块开发中,可能要引用外部的资源文件,如图片,css文件等。通过dojo.moduleUrl(module,url)可以把模块内一个相对于模块的路径转换为实际访问路径,参数module表示模块名称,url是相对于模块的路径,返回一个dojo._url对象,如dojo.moduleUrl("example","image/log.jpg")表示的路径是js/example/image/log.jpg.


2、 dojo.parser

Dojo解析器是一个可选模块,用于将具有特定标记的DOM结点转换为 Dijits 部件。这里的“标记”通常是指`dojoType`属性。任何“类”(或者说是某种对象,例如由 'dojo.declare <dojo/declare>'创建的那些对象),只要在其DOM中的某个结点上标记`dojoType`属性,就能够被实例化为一个小部件(Widget)。

但这并不局限于Dijit或 :ref:'dojo.declare <dojo/declare>'。

要在你的HTML中为解析器标记结点,只需要将dojoType属性设置为小部件的类,并在其他属性中设置 小部件的初始化参数。例如:

<input dojoType="dijit.form.TextBox" name="nm" value="hello world">
解析器会扫描整个DOM,寻找所有 dojoType 属性并创建对应的小部件实例。

  •    加载解析器

要在你的页面中使用Dojo解析器,只需“请求”(require) “dojo.parser” 模块:

dojo.require("dojo.parser");

注意: dijit._Templated也会require “dojo.parser”,因此许多示例中并不包含这一步骤(dijit._Templated为被几乎所有Dijit部件加载)。不过,显式地 :require <dojo/require>这个模块总是比假设它存在要保险得多。

  •  运行解析器

有两种方法可以运行dojo.parser:手动;或在onLoad之前。

要手动执行解析器,只需调用函数 “parse“:

dojo.parser.parse();
要在你的页面加载时自动运行解析器,只需在你的dojo脚本标签上添加 djConfig=”parseOnLoad: true”:

<script type="text/javascript" src="dojo/dojo.js"
        djConfig="parseOnLoad: true"></script>
parseOnLoad就是这样一个配置属性,设为true之后,Dojo就会在页面载入完成之后立刻寻找所有带有dojoType属性的节点,并将其转换为相应的Dijit控件。
网友评论