flymis/WebRoot/dojojs/src/loader_xd.js
(开头部分) 13KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
/*
Copyright (c) 2004-2006, The Dojo Foundation
All Rights Reserved.
Licensed under the Academic Free License version 2.1 or above OR the
modified BSD license. For more information on Dojo licensing, see:
http://dojotoolkit.org/community/licensing.shtml
*/
//Cross-domain package loader.
//FIXME: How will xd loading work with debugAtAllCosts? Any bad interactions?
//FIXME: widgets won't work fully (HTML/CSS) and also because of the requireIf() thing.
dojo.hostenv.resetXd = function(){
//This flag indicates where or not we have crossed into xdomain territory. Once any package says
//it is cross domain, then the rest of the packages have to be treated as xdomain because we need
//to evaluate packages in order. If there is a xdomain package followed by a xhr package, we can't load
//the xhr package until the one before it finishes loading. The text of the xhr package will be converted
//to match the format for a xd package and put in the xd load queue.
//You can force all packages to be treated as xd by setting the djConfig.forceXDomain.
this.isXDomain = djConfig.forceXDomain || false;
this.xdTimer = 0;
this.xdInFlight = {};
this.xdOrderedReqs = [];
this.xdDepMap = {};
this.xdContents = [];
}
//Call reset immediately to set the state.
dojo.hostenv.resetXd();
dojo.hostenv.createXdPackage = function(contents){
//Find dependencies.
var deps = [];
var depRegExp = /dojo.(require|requireIf|requireAll|provide|requireAfterIf|requireAfter|kwCompoundRequire|conditionalRequire|hostenv\.conditionalLoadModule|.hostenv\.loadModule|hostenv\.moduleLoaded)\(([\w\W]*?)\)/mg;
var match;
while((match = depRegExp.exec(contents)) != null){
deps.push("\"" + match[1] + "\", " + match[2]);
}
//Create package object and the call to packageLoaded.
var output = [];
output.push("dojo.hostenv.packageLoaded({\n");
//Add dependencies
if(deps.length > 0){
output.push("depends: [");
for(var i = 0; i < deps.length; i++){
if(i > 0){
output.push(",\n");
}
output.push("[" + deps[i] + "]");
}
output.push("],");
}
//Add the contents of the file inside a function.
后面还有 377 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。