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;
       }
});

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

时间: 2024-12-21 09:11:55

require的路径问题(比较重要)的相关文章

LUA require 搜索路径指定方法

如果是一个 *.LUA 的文件, 里面用到了自己写的库, 或者第三方写的库, 但是你不想把它放到 lua 的安装目录里, 则在代码里面可以指定require搜索的路径. package.path = '/usr/local/share/lua/5.1/?.lua;/home/resty/?.lua;' --搜索lua模块 package.cpath = '/usr/local/lib/lua/5.1/?.so;' --搜索so模块 如果是要在 nginx.conf 文件中引用第三方的库,则需要在

xLua使用require改变路径加载Lua脚本

这个问题我纠结了好久,应该是属于偏新手的一个问题,在写代码的时候因为两个lua脚本的关联问题,很多新人应该也会纠结于此. xLua官方的例子加载脚本是这样的: LuaEnv luaenvScriptCtrl = new LuaEnv(); luaenvScriptCtrl.DoString(@" require('LuaScriptList')"); 此时如果lua脚本不在Resources路径下,或者不在默认的目录下,此时是加载不到对应的lua脚本的. 官方例子代码:Signatur

Lua require搜索路径指定方法

在自己的lua文件中,如果使用到了自己写的C库或者第三方库,想让lua编译到自己指定的目录下寻找*.lua或*.so文件的时候,可以再自己的Lua代码中添加如下代码,可以指定require搜索的路径. package.path = '/usr/local/share/lua/5.1/?.lua;/home/resty/?.lua;'    --搜索lua模块    package.cpath = '/usr/local/lib/lua/5.1/?.so;'        --搜索so模块 如果是

CCLuaLoadChunksFromZIP加载后的require路径问题

对于require来说,在LUA中的机制就是搜索path路径了.但对于CCLuaLoadChunksFromZIP加载的LUA文件来说,require的路径又是怎么样的呢? 我在服务器上有一个 ooxx.lua文件,我把它打包为了zip ,然后下载到本地,写进了writablePath.."upd/"目录下,名字叫 tmp.zip紧接着CCLuaLoadChunksFromZIP(writablePath.."upd/tmp.zip") --执行成功,显示加载了一个

NodeJS require路径

项目需要用nodejs,感觉nodejs是前端装逼神器了,是通向全栈工程师的必经之路哇,接下来开始踏上学习nodejs的征程.下面是第一个hello,world的程序. 1.server.js文件,这相当于服务器脚本. var http = require("http"); function start() { function onRequest(request, response) { console.log("Request recieved") respon

lua加载函数require和dofile

Lua提供高级的require函数来加载运行库.粗略的说require和dofile完成同样的功能但有两点不同: 1. require会搜索目录加载文件 2. require会判断是否文件已经加载避免重复加载同一文件. 由于上述特征,require在Lua中是加载库的更好的函数. require使用的路径和普通我们看到的路径还有些区别,我们一般见到的路径都是一个目录列表.require的路径是一个模式列表,每一个模式指明一种由虚文件名(require的参数)转成实文件名的方法.更明确地说,每一个

Ruby的require相关知识

1. 在调用require xxx之前,需要确定xxx这个gem已经安装过了(使用gem install xxx,安装位置可以使用gem env列出),或者xxx是Ruby内置的标准函数库(StdLib),总之在本地有xxx的代码或lib. 2. 调用require xxx后发生了什么?xxx不是绝对路径. (1)如果在 $LOAD_PATH 数组中能找到xxx,就调用kernel的原有require方法来载入xxx,并在 $LOADED_FEATURES中加入xxx (2)如果在 $LOAD_

【前端学习笔记】2015-09-09~~~~nodejs中的require()和module.exports

nodejs中一个js文件就可以看做是一个模块 在node环境中,可以直接var a=require('模块路径以及不带扩展名的模块名') exports---module.exports 其中node准备好了module变量, var module={ id:'hello', exports:{} }; 输出模块变量,最好都用module.exports=''或者函数;当赋值不是函数或者数组时,可以对exports直接赋值,建议统一使用module.exports=进行赋值

Lua中的loadfile,dofile,require使用,最后还有调试

1.loadfile---只编译,不运行. loadfile编译代码成中间码并且返回编译后的chunk作为一个函数,而不执行代码:另外loadfile不会抛出错误信息而是返回错误代号. loadstring与loadfile相似,只不过它不是从文件里读入chunk,而是从一个串中读入. 2.dofile----编译.运行. dofile,其实首先是利用loadfile进行编译,然后再运行代码.我们可以定义dofile如下: function dofile (filename) local f =