gpt4 book ai didi

javascript - Dojo EdgeToEdgeStoreList 与自定义 ListItem 问题

转载 作者:行者123 更新时间:2023-11-28 08:22:51 25 4
gpt4 key购买 nike

刚刚在使用 dojo mobile 时遇到了 dojo 模板问题。我想为 EdgeToEdgeStoreList 创建自定义 ListItem。

主html文件index.html包含

<div data-dojo-type="dojox.mobile.EdgeToEdgeStoreList" data-dojo-props="itemRenderer:app.widgets.CustomListItem" id="list"></div>

.js 文件设置存储在列表中:

require([ "dojo/ready","dojo/store/Memory", "dojo/parser", "sts/widgets/CustomListItem", "dojox/mobile", "dojo/dom",
"dijit/registry", "dojox/mobile/ScrollableView", "dojox/mobile/TabBar",
"dojox/mobile/TabBarButton", "dojox/mobile/EdgeToEdgeStoreList"], function(ready, Memory, parser) {

ready(function() {
console.log('Dojo ready!');

store = new Memory({
data : [{name:'aaa',surname:'AAA'},{name:'bbb', surname: 'BBB'}],
idProperty : 'name'
});

dijit.registry.byId('list').setStore(store);
});

});

小部件.js 文件

define(["dojo/_base/declare",
"dijit/_WidgetBase",
"dijit/_TemplatedMixin",
"dojox/mobile/ListItem",
"dojo/text!./templates/CustomListItem.html"
],
function(declare, WidgetBase, TemplatedMixin, ListItem, template){
return declare('app.widgets.CustomListItem', [WidgetBase, TemplatedMixin, ListItem],{
templateString: template
});

});

以及小部件的模板:CustomListItem.html

<div>
<div>TEST TEST</div>
</div>

有谁知道为什么如果我在小部件声明中使用这样的顺序(WidgetBase、TemplatedMixin、ListItem),dojo 会尝试渲染 ListItem 默认模板,但如果我交换 TemplatedMixi 和 ListItem(WidgetBase、ListItem、TemplatedMixin),则一切正常正确吗?我什至不知道继承顺序对于 dojo 很重要。

谢谢。

最佳答案

我没有对您的问题的确切根源解释,但事实是 ListItem 已经从 _WidgetBase 继承了自身,所以我想说没有理由让您自己的类重复该继承。

declare('app.widgets.CustomListItem', [ListItem, TemplatedMixin],{});

应该可以工作并且更简单吗?

关于javascript - Dojo EdgeToEdgeStoreList 与自定义 ListItem 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22787504/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com