DOJO:无法正确显示portlet

DOJO:无法正确显示portlet,dojo,portlet,Dojo,Portlet,我想在dojo 1.7中的mozilla浏览器上显示基本portlet,但下面将以简单文本的形式显示数据,而不实际使用dojo API创建任何portlet。谁能告诉我我做错了什么 <!Doctype html> <html> <head> <link rel="stylesheet" type="text/css" href="../lib/dijit/themes/claro/claro.css"/> <style type = "tex

我想在dojo 1.7中的mozilla浏览器上显示基本portlet,但下面将以简单文本的形式显示数据,而不实际使用dojo API创建任何portlet。谁能告诉我我做错了什么

<!Doctype html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="../lib/dijit/themes/claro/claro.css"/>
<style type = "text/css">
@import "../lib/dojox/widget/Portlet/Portlet.css"</style>
<script src = "../lib/dojo/dojo.js" data-dojo-config = "async: true, parseOnLoad:true" >
dojo.require("..lib/dojox/widget/Portlet");
dojo.require("..lib/dijit/dijit");
</script>
</head>
<body class="claro">
<div data-dojo-type="dojox.widget.Portlet" title="A Simple Portlet">
<div data-dojo-type="dojox.widget.PortletSettings">
    This is a simple setting widget.
    Put Whatever you like in here
</div>
<div style="height: 100px;">
The contents of the portlet go in here.
</div>
</div>
</body>
</html>

@导入“./lib/dojox/widget/Portlet/Portlet.css”
require(“…lib/dojox/widget/Portlet”);
dojo.require(“…lib/dijit/dijit”);
这是一个简单的设置小部件。
把你喜欢的东西放在这里
portlet的内容放在这里。

查看
dojox.widget.Portlet
源代码。它没有重写为格式,因此您无法解析依赖项。甚至test
dojox/widget/tests/test\u Portlet.html
也不起作用

要解决此问题,请将加载程序切换到定义
async:false的同步模式,或完全忽略定义,如Dojo 1.7中所述,同步模式为默认模式

还有另一个未解决的依赖项,我通过在要求
dojox.widget.Portlet
之前显式要求AMD模块
dijit.\u容器
来解决:

dojo.require("dijit._Container");
dojo.require("dojox.widget.Portlet");

请参阅jsFiddle上的工作示例:

谢谢您的回复。若试图将您的代码称为HTML文件,我仍然无法在浏览器上正确显示portlet。我在模块“dijit.Container”上遇到异常。您能告诉我这是什么原因吗?您刚才不是打错了什么东西,例如dijit.\u Container
?我只是将粘贴的jsFiddle代码复制到一个文件中,它的工作方式与所有浏览器中的jsFiddle相同。您遇到了什么样的异常?在chrome中:XMLHttpRequest无法加载。访问控制允许原点不允许原点为null。这是安全约束。您必须通过HTTP服务器(例如Apache)运行代码,您将其作为本地文件运行(即
文件://
而不是
HTTP://
)。