【问题标题】:How to get TabContainers and Spring Roo with Dojo 1.9.x working?如何让 TabContainers 和 Spring Roo 与 Dojo 1.9.x 一起工作?
【发布时间】:2014-05-21 18:40:04
【问题描述】:

我正在尝试使用 Dojo 1.9.3 更新我的 Spring Roo 项目

我已使用 dojo-1.9.3 文件夹和代码更新了我的网络资源。

我已更新我的 load-scripts.tagx 以引用新版本而不是默认版本。

我什至在 pom.xml 和 load-scripts.tagx 中删除了 spring-js 的引用。

我的 TabContainer 没有呈现。

我决定尽可能做最简单的页面。我从道场网站复制了以下部分内容。

<div >

    <script>dojoConfig = {parseOnLoad: true}</script>

    <script>
        require(["dojo/parser", "dijit/layout/TabContainer", "dijit/layout/ContentPane"]);
</script>
<div style="width: 350px; height: 300px">
<div data-dojo-type="dijit/layout/TabContainer" style="width: 100%; height: 100%;">
    <div data-dojo-type="dijit/layout/ContentPane" title="My first tab" data-dojo-props="selected:true">
        Lorem ipsum and all around...
    </div>
    <div data-dojo-type="dijit/layout/ContentPane" title="My second tab">
        Lorem ipsum and all around - second...
    </div>
    <div data-dojo-type="dijit/layout/ContentPane" title="My last tab" data-dojo-props="closable:true">
        Lorem ipsum and all around - last...
    </div>
</div>

有人知道为什么不渲染吗?

更新: 渲染的问题是我自己的错。我让 javascript 干扰了 div 的解析。我继续并在下面将我的答案标记为正确,因为这是解决它的一种方法。

【问题讨论】:

    标签: dojo spring-roo


    【解决方案1】:

    如果我从声明式更改为程序式,我可以让它工作。

    下面我粘贴了我测试成功的jspx。

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <div xmlns:c="http://java.sun.com/jsp/jstl/core"
    xmlns:fn="http://java.sun.com/jsp/jstl/functions"
    xmlns:jsp="http://java.sun.com/JSP/Page"
    xmlns:spring="http://www.springframework.org/tags"
     version="2.0">
    <jsp:directive.page contentType="text/html;charset=UTF-8" />
    <jsp:output omit-xml-declaration="yes" />
    
    <script>
    require(["dijit/layout/TabContainer", "dijit/layout/ContentPane", "dojo/domReady!"], function(TabContainer, ContentPane){
    var tc = new TabContainer({
        style: "height: 100%; width: 100%;"
    }, "myTabContainer");
    
    var cp1 = new ContentPane({
        style:"height:125px",
        title: "tab 1"
      }, "editTab");
    tc.addChild(cp1);
    
    var cp2 = new ContentPane({
        style:"height:125px",
        title: "tab 2"
      }, "editTab2");
    tc.addChild(cp2);
    
    var cp3 = new ContentPane({
        style:"height:125px",
        title: "tab 3"
      }, "editTab3");
       tc.addChild(cp3);
    
       tc.startup();
    });
    </script>
    <div style="width: 350px; height: 290px">
        Test
        <div id="myTabContainer">
            <div id="editTab">tab 1</div>
    
    
            <div id="editTab2">tab 2</div>
    
            <div id="editTab3">tab 3</div>
        </div>
    </div>
    

    【讨论】:

      猜你喜欢
      • 2012-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-11
      • 1970-01-01
      • 2014-05-24
      • 2016-01-11
      • 1970-01-01
      相关资源
      最近更新 更多