【问题标题】:Dojo File Caching in WorklightWorklight 中的 Dojo 文件缓存
【发布时间】:2013-11-11 14:58:24
【问题描述】:

当使用 Dojo 文件缓存和 Worklight 在模拟器中运行时收到 404 错误。似乎正在加载的文件没有从公共区域复制到设备。我还需要在我的项目中定义什么来实现这一点吗?必须有一个约定,我想继续遵循它,因为我希望项目中有更多的模板文件。

我在 .js 文件中的定义语句:

define(["dojo/_base/lang", "dijit/layout/ContentPane", "dojo/dom", "dojo/text!./templates/Order.html"], function(lang, ContentPane, dom, template){
...
var cp1 = new ContentPane({
            title:"Order",
            content: lang.replace(template, someJson)
         }).placeAt("temp");

我的文件夹结构: 在 common/js 目录中,我有一个 .js 文件中的上述代码,我有一个模板文件夹来保存 Order.html,我希望将来会有其他模板文件存储在那里。

控制台出错:

GET http://localhost:10080/DojoProject/apps/services/preview/DojoApp/windowsphone8/1.0/default/layers/templates/Order.html 404 (Not Found) 

【问题讨论】:

    标签: caching dojo ibm-mobilefirst


    【解决方案1】:

    您指定路径的方式似乎是,浏览器尝试在与“模板”同级的“层”文件夹中查找文件。

    您是否尝试将“dojo/text!./templates/Order.html”修改为:“dojo/text!./../templates/Order.html”以向上导航一级,然后继续进入模板文件夹?

    我不确定这是否可行,但我认为值得一试。

    【讨论】:

    • 是的,感谢您的回复,我之前尝试过。据我所知,Worklight 似乎没有在生成后复制模板文件。我能找到的唯一解决方法是将文件手动暂存到 Windows Phone 目标,但这不是一个很好的解决方案,因为所有设备都应该可以访问这样的常见文件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多