• require的路径问题(比较重要)


    dojo.baseUrl

    baseUrl用来存储dojo.js存放 的跟目录,例如dojo.js的路径是“/web/scripts/dojo-1.3/dojo/dojo.js”则baseUrl为“/web /scripts/dojo-1.3/dojo/”,dojo.baseUrl也可以通过djConfig.baseUrl来配置。

    dojo认为所有不以dojo开始的包都存放在和dojo文件夹相同的目录中,因此dojo.require(“some.module”),是dojo加载文件“/web/scripts/dojo-1.3/some/module.js”。

    dojo.registerModulePath

    registerModulePath方法用来指定包的加载路径,该路径是相对dojo.baseUrl的:
     dojo.registerModulePath("lib", "../../lib");
     // 如果dojo.js的路径是 /somepath/dojotoolkit/dojo/dojo.js
     // baseURL是 "/somepath/dojotoolkit/dojo/"
     // 则 "lib" 的路径是 "/somepath/lib"

     注意:如果指定的路径以“/”或“http”开始,则路径和baseUrl无关,设置的路径的值不能以""结尾。

    djConfig.modulePaths

    modulePaths属性配置多个module的路径,初始化时,调用dojo.registerModulePath定义多个module path。

    var djConfig = {
         modulePaths : {'foo1': '../../bar1','foo2': '../../bar2'}
     }

    dojo.moduleUrl

    moduleUrl方法返回某个url相对于指定module的path的绝对路径(比较啰嗦,看看例子)。

    // points to $dojoroot/dijit/form/tests/TestFile.html
    var url = dojo.moduleUrl("dijit.form", "tests/TestFile.html");
    dojo.xhrGet({
           url: url,
           load: function(html){
                dojo.byId("foo").innerHTML = html;
           }
    });

    以上为网上收录,感谢原作者。

  • 相关阅读:
    vim编辑器
    centos7启动顺序加密的问题
    centos7进入单用户模式
    centos7修改默认运行级别的变化
    C#构建DataTable(转)
    策略模式简介
    简单工厂模式(转)
    NPOI导Excel样式设置(转)
    VS2012启用angularjs智能提示Intelligence
    WebForm页面间传值方法(转)
  • 原文地址:https://www.cnblogs.com/tinaluo/p/7237974.html
Copyright © 2020-2023  润新知