【问题标题】:Getting Dojo widgets like dojox.layout.ContentPane working for Android apps developed using Cordova with NetBeans让 Dojo 小部件(如 dojox.layout.ContentPane)适用于使用 Cordova 和 NetBeans 开发的 Android 应用程序
【发布时间】:2015-04-27 02:44:09
【问题描述】:

我正在尝试让 dojox.layout.ContentPane 等小部件在适用于 Android 和 iOS 的 Netbeans Cordova 环境中正常工作。我使用的主要 contentPane 将根据用户按下的内容呈现页面。是否有可能让它发挥作用,或者 Dojo 中是否有更好的替代方案用于此目的?

<script type="text/javascript">    
       require([
            "dojox/layout/ContentPane",
            "dijit/registry",
            "dojo/domReady!"
        ], function(
            ContentPane,
            registry
        ) {
            var contentPanel = new ContentPane({
                ioMethod: dojo.xhrPost,
                executeScripts:"true",
                style: "height: 100%",
                region:"center"
            },"contentPanel");   

            contentPanel.setHref("home.html");

});

<div id="contentPanel" padding-bottom:10px">
</div>

这是萤火虫控制台中出现的错误行

var error = new RequestError('Unable to load ' + response.url + ' status: ' + _xhr.status, response);

Update1:​​我怀疑这与许多其他人面临的 Android SDK 问题有关,这是由许多 Dojo 文件中的 _ 字符引起的 (Google Issue link)。建议使用 Dojo Build。但我还没有设法将建议工作的“所有内容构建到 1 个文件中”

我尝试的 Dojo Build 配置文件:

var profile = (function(){
return {
    basePath: "./../../../../../web/html/js/",//file path start from Util\dojoSDK\util\buildscripts\profiles
    releaseDir: "./../../../Util/release",
    action: "release",
    layerOptimize: "closure",
    optimize: "shrinksafe",
    cssOptimize: "false",
    mini: false,
    stripConsole: "normal",
    selectorEngine: "acme",

    packages:[/**/{
        name: "dojo",
        location: "../../../Util/dojoSDK/dojo"
    },{
        name: "dojox",
        location: "../../../Util/dojoSDK/dojox"
    },{
        name: "dijit",
        location: "../../../Util/dojoSDK/dijit"
    }],

    layers: {
        "dojo/dojo": {
            include: [
                "dojo/dojo",
                "dojo/i18n",
                "dojo/domReady",
                "dojo/parser"

 *all .js files in Dojo with _*
            ],
            customBase: true,
            boot: true
        }
    }
};
})();

最终更新:显然这不是由上面 Update1 中突出显示的下划线问题引起的。我重用了来自Dojo Flickr demo FINAL 的完整示例代码,并将 dojox.layout.ContentPane 集成到其中,一切正常。无法说出究竟有什么帮助,但我怀疑它是用 dojox/mobile/parser 和 dojox/mobile/compat 之类的东西编写 dojo 加载器的方式。

我已经按照 frank 的建议研究了 dojo.mobile 模块

【问题讨论】:

标签: javascript android cordova netbeans dojo


【解决方案1】:

对于移动布局,您可以使用dojox/mobile/view

这是 dojo mobile 上的一个很好的教程(示例移动应用程序),可帮助您入门。 http://dojotoolkit.org/documentation/tutorials/1.10/mobile/flickrview/part2/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-07
    • 1970-01-01
    • 2018-06-28
    • 1970-01-01
    • 1970-01-01
    • 2016-07-05
    • 2015-04-27
    相关资源
    最近更新 更多