我正在尝试编写一个简单的Dojo HelloWorld Widget,但我无法在浏览器中看到输出。 目录结构:
tutorial
dojotoolkit
dijit
dojo
dojox
my_ext
HelloWorldWidget.js
test.html
以下是代码:
HelloWorldWidget.js
dojo.provide("my_ext.HelloWorldWidget");
dojo.require("dijit._Widget");
dojo.require("dijit._Templated");
dojo.declare(
"my_ext.HelloWorldWidget",[dijit._Widget,dijit._Templated], {
templateString: '<div>This is a test</div>'
});
的test.html
<html>
<head>
<script type="text/javascript">
var djConfig = {
isDebug:true, parseOnLoad:true
};
</script>
<script type="text/javascript" src="dojotoolkit/dojo/dojo.js"></script>
<script language="JavaScript" type="text/javascript">
dojo.require("my_ext.HelloWorldWidget");
</script>
</head>
<body>
<!-- as an HTML element with dojoType attribute -->
<div dojoType="HelloWorldWidget"></div>
</body>
</html>
如果有人可以指出错误,那将会非常有帮助。我花了很长时间没有成功。 感谢。
答案 0 :(得分:3)
您是否检查过控制台是否有错误消息?
您的窗口小部件名为my_ext.HelloWorldWidget
,dojoType需要完全限定名称才能找到窗口小部件。
答案 1 :(得分:2)
首先,将这个js块从头到尾移动:
<script language="JavaScript" type="text/javascript">
dojo.require("my_ext.HelloWorldWidget");
</script>
第二个在dojoType attr使用小部件的全名:
<body>
<script language="JavaScript" type="text/javascript">
dojo.require("my_ext.HelloWorldWidget");
</script>
<div dojoType="my_ext.HelloWorldWidget"></div>
</body>