我正在使用Eclipse Mars 4.5.0和MobileFirst Studio 7.1插件。
我正在使用内置的dojo库并遵循IBM知识中心的文档:https://www-01.ibm.com/support/knowledgecenter/SSZH4A_6.2.0/com.ibm.worklight.dev.doc/wl_studio_tools/topics/cdojolibprjsetupwl.html
当我在浏览器上查看应用程序时,我无法查看任何dojo小部件。 Dojo移动小部件正确呈现;我有一个滑块,单选按钮&圆形矩形窗格。在下图中,我尝试放置一个dojo日期文本框和一个货币字段,但它们无法正确呈现。
感谢任何建议和帮助
答案 0 :(得分:1)
似乎没有加载dijit主题。
尝试将主题包含在应用程序的index.html文件中:
<link rel="stylesheet" href="dijit/themes/claro/claro.css">
确保您的www文件夹中有主题和图标文件夹(www / digit / themes / claro和www / digit / icons)
在您提供的项目中,我没有在索引中看到CurrencyTextBox或DateTextBox小部件。
但要使这些小部件工作,请确保将模块包含在main.js中的dojoInit()函数中:
function dojoInit() {
require([ "dojo/ready", "dojo/parser", "dojox/mobile", "dojo/dom", "dijit/registry", "dojox/mobile/ScrollableView",
"dijit/form/CurrencyTextBox", "dijit/form/DateTextBox"],
function(ready) {
ready(function() {
});
});
}
在你的索引中你应该有这样的东西:
<body style="display: none;" class="claro">
<div data-dojo-type="dojox.mobile.ScrollableView" id="view0" data-dojo-props="selected:true">
<!--application UI goes here-->
<label for="income1">U.S. Dollars</label>
<input type="text" name="income1" id="income1" value="54775.53" required="true"
data-dojo-type="dijit/form/CurrencyTextBox" data-dojo-props="constraints:{fractional:true},currency:'USD', invalidMessage:'Invalid amount. Cents are required.'" />
<br>
<label for="date1">Drop down Date box:</label>
<input type="text" name="date1" id="date1" value="2005-12-30"
data-dojo-type="dijit/form/DateTextBox"
required="true" />
</div>
<script src="js/initOptions.js"></script>
<script src="js/main.js"></script>
<script src="js/messages.js"></script>
</body>
(不要忘记将主题类名称添加到父<body>
元素)
希望这有帮助