createjs - createjs loadManifest,它应该在清单中加载文件,对吗?
问题描述
如果我正确理解文档... </p>
window.queue = new createjs.LoadQueue(true, null, true);
queue.loadManifest({src: manifest, type: "manifest"}, true);
应该加载位于 json 文件中的文件,对吗?在检查器中看不到任何请求,仅在控制台中获取结果数组。我是否必须遍历结果数组并手动执行 loadFile?
JSON 在 {src:"",id:"",type:"createjs.Types.IMAGE"} 结构中的格式正确。
任何帮助表示赞赏。
添加更多代码:
传入清单 url 的函数
function loadImages(manifest) {
window.queue = new createjs.LoadQueue(true, null, true);
queue.loadManifest({src: manifest, type: "manifest"}, true);
queue.on("fileload", this.handleFileLoaded);
queue.on("progress", function(event) {
console.log("progress " + event.progress);
});
queue.on("fileprogress", function(event) {
console.log("file progress " + event.progress);
});
queue.on("error", function(event) {
console.log("file error");
});
queue.on("complete", function(event) {
console.log("queue complete");
console.log(event);
});
queue.load();
return queue;
}
此时,handleFileLoaded 事件只是将事件转储到控制台。
清单有两个例子
{
"path":"https://images.unsplash.com/",
"type":"manifest",
"manifest": [
{
"src":"photo-1542838454-d4dce2a7cfde?fit=crop&w=500&q=60",
"id":"stair_boy",
"type":"createjs.Types.IMAGE"
},
{
"src":"photo-1549948558-1c6406684186?fit=crop&w=500&q=60",
"id":"night_bridge",
"type":"createjs.Types.IMAGE"
}
]}
我可以在文件加载事件中访问清单数组,我可以从那里手动加载图像,但这似乎违反了使用 PreloadJS 的全部意义。似乎在页面加载时,Preload 应该加载清单,识别“类型”......循环文件,在网络检查器中我应该看到图像的网络请求。
解决方案
您的清单中的类型不正确。您正在传递一个字符串值“createjs.Types.IMAGE”。这不等于 "image",也不等同于 JavaScript createjs.Types.IMAGE
,因为它被解释为字符串。
而是使用字符串值“image”
{
"path":"https://images.unsplash.com/",
"type":"manifest",
"manifest": [
{
"src":"photo-1542838454-d4dce2a7cfde?fit=crop&w=500&q=60",
"id":"stair_boy",
"type":"image"
},
{
"src":"photo-1549948558-1c6406684186?fit=crop&w=500&q=60",
"id":"night_bridge",
"type":"image"
}
]}
编辑:只有在没有可识别的图像扩展名时才需要 type 属性,例如这种情况。
推荐阅读
- optimization - “SEND+MORE=MONEY”任务的 pyomo 模型约束编程
- .net - 使用 dnlib 重写后,局部变量类型的某些元数据标记无效
- spring - 如何使 spring AntPathMatcher 匹配可选的父目录?
- haskell - 在 Haskell 中调度联合类型
- reactjs - 为什么我总是需要使用 Zusand(React-Redux 状态管理工具) Store 返回一些 html?
- javascript - pagination.js 多个分页
- powershell - 从列表中调用 CIMMethod - SCCM 应用程序安装
- restsharp - Rest-sharp - Restclient - {"The remote certificate is invalid according to the validation procedure."}
- python-3.x - 如何一次从 csv 文件中获取变量并循环项目?
- javascript - Setting date input to initial value pulled from database