IBM Worklight 5.0.6-无法添加外部Dojo组件(要求Dojo Dgrid时出现脚本错误)

IBM Worklight 5.0.6-无法添加外部Dojo组件(要求Dojo Dgrid时出现脚本错误),dojo,ibm-mobilefirst,dgrid,worklight-studio,Dojo,Ibm Mobilefirst,Dgrid,Worklight Studio,我已下载并在dgrid中重命名文件夹后,将其移动到Dojo文件夹中 在HTML中,我包括如下内容: <!--application UI goes here--> <script type="text/javascript" src="dgrid/Grid.js"></script><!--prova importazione Dgrid--> <script src="js/initOptions.js"></script>

我已下载并在dgrid中重命名文件夹后,将其移动到Dojo文件夹中

在HTML中,我包括如下内容:

<!--application UI goes here-->
<script type="text/javascript" src="dgrid/Grid.js"></script><!--prova importazione Dgrid-->
<script src="js/initOptions.js"></script>
<script src="js/MobileACG.js"></script>

注意:关于Dojo,IBM Worklight仅支持运行时和工具的IBM Dojo工具包。
IBM的dgrid等价物

也就是说,请按照以下步骤使dgrid在Worklight项目中工作

    • 解压缩,将文件夹重命名为“dgrid”
    • 解压,将文件夹重命名为“xstyle”
    • 解压,将文件夹重命名为“放置选择器”

  • 在Worklight 5.0.6中

    • 创建新项目
    • 创建一个新的应用程序,并在关闭向导之前确保勾选Dojo复选框,将Dojo添加到项目中
    • 可以选择添加Android环境
    • 将上面的三个文件夹放在属于项目的dojo文件夹的根目录下:


  • 打开build-dojo.xml并添加以下内容:

    <include name="dojo/_base/declare.js"/>
    <include name="dojo/domReady.js"/>
    <include name="dgrid/**"/>
    <include name="put-selector/*"/>
    <include name="xstyle/**"/>
    
  • 在BODY元素中添加以下内容:

  • 全部构建并部署
  • 在Worklight控制台中预览

    您还可以在Eclipse中的设计透视图中预览,尽管我注意到表中存在一些渲染问题(在MBS(下面)中没有看到;我想它在CSS中是可以修复的…)


  • 全尺寸图像:

    i我可以按照您的步骤进行操作,但它不起作用,请参见下面我的新答案。哇,它起作用了。但我不明白一件事。xstyle和put选择器是什么?dgrid安装说明中也提到要添加它们,因此我想,如果您继续使用dgrid进行开发,您最终将需要它们,具体取决于您想要实现什么。Google.why include还包括name=“dojo/_base/declare.js”/>”预览应用程序失败,但却没有成功(chrome开发工具显示它丢失了)。当然,还有优化的空间,这只是为了让它工作。
    function creaGridTableArticoli(){
        dgrid
        require(["dgrid/Grid"], function(Grid){
            var columns = {
                first: {
                    label: "First Name"
                },
                last: {
                    label: "Last Name"
                }
            };
            var grid = new Grid({ /* options here */ }, "grid");
            WL.Logger.debug("ok");
    
        });
    
    }
    
    <include name="dojo/_base/declare.js"/>
    <include name="dojo/domReady.js"/>
    <include name="dgrid/**"/>
    <include name="put-selector/*"/>
    <include name="xstyle/**"/>
    
       require(["dgrid/Grid", "dojo/domReady!"], function(Grid) {
           var data = [
             { first: "Bob", last: "Barker", age: 89 },
             { first: "Vanna", last: "White", age: 55 },
             { first: "Pat", last: "Sajak", age: 65 }
           ];
    
           var grid = new Grid({
             columns: {
                 first: "First Name",
                 last: "Last Name",
                 age: "Age"
             }
           }, "grid");
    
           grid.renderArray(data);
       });